专栏文章

题解:UVA12802 Gift From the Gods

UVA12802题解参与者 1已保存评论 0

文章操作

快速查看文章及其快照的属性,并进行相关操作。

当前评论
0 条
当前快照
1 份
快照标识符
@miqehpk0
此快照首次捕获于
2025/12/04 03:29
3 个月前
此快照最后确认于
2025/12/04 03:29
3 个月前
查看原文

题目大意

这可能是这个题最难的部分了(bushi
每次输入一个数 aa,输出 2a2a,如果 2a2a 回文且是个质数,那么就结束程序。
就这样。是不是很简单。

代码

CPP
#include <bits/stdc++.h>
using namespace std;
bool prm(int a)
{
	if (a < 2) return 0;
	for (int i = 2; i * i <= a; i ++)
		if (a % i == 0)
			return 0;
	return 1;
}//判素数
bool hw (int a)
{
	int cnt = 0;
	int a2 = a;//拷贝一下
	while (a2)
	{
		cnt = cnt * 10 + a2 % 10;
		a2 /= 10;
	}
	return cnt == a;
}//判断是否回文
int main()
{
	while (1)
	{
		int a;
		cin >> a;
		a *= 2;
		cout << a << endl;
		if (hw (a) && prm(a)) break;//都满足
	}
	return 0;
}
另外,好像还可以直接这么写
CPP
while ((cin >> a))
{
    cout << 2a << endl;
}
有些题就是这样的。但是本人无 UVA 账号,就不扯那么多了

评论

0 条评论,欢迎与作者交流。

正在加载评论...