题目描述
小芳是个数学谜,喜欢研究各种有趣的数字。最近,她学习了有趣的“雷劈数”。
把整数3025从中剪开分为30和25两个数,此时再将这两数之和平方,计算结果又等于原数。
(30+25)(30+25)=5555=3025,这样的数叫“雷劈数”。
请你输入一个四位数,判断它是否为雷劈数,如果是,请输出“YES”,如果不是,请输出“NO”。
输入
输入一行,一个四位整数
输出
输出YES或NO
样例
输入 复制
2025
输出 复制
YES
提示
“/”和“%”的用法
题目描述
小芳是个数学谜,喜欢研究各种有趣的数字。最近,她学习了有趣的“雷劈数”。
把整数3025从中剪开分为30和25两个数,此时再将这两数之和平方,计算结果又等于原数。
(30+25)(30+25)=5555=3025,这样的数叫“雷劈数”。
请你输入一个四位数,判断它是否为雷劈数,如果是,请输出“YES”,如果不是,请输出“NO”。
输入
输入一行,一个四位整数
输出
输出YES或NO
样例
输入 复制
2025
输出 复制
YES
提示
“/”和“%”的用法
int n;
cout << "请输入一个4位数字";
cin >> n;
vector<int> res;
int a = n;
while (n) {
res.push_back(n % 10);
n /= 10; //这里n的值被改变。所以不能使用n进行比较
}
//题目明确说明,只能有4位数字
int value1 = res[3] * 10 + res[2];
int value2 = res[1] * 10 + res[0];
int sum = pow(value1+value2, 2);
if (sum == a)
{
cout << "Yes " << endl;
}
else
{
cout << "No" << endl;
}