【题目描述】
卡常数是一类独特的数,首先它应该是一个四位数。将它平分为二段,十位和个位组成一个新的数 a ,千位和百位组成一个新的数 b ,如果满足(a+b)2(+)2等于这个数本身,这个数就是一个卡常数。
比如 3025,被拆成 30 和 25 两个数,(30+25)2=3025,所以 3025 是一个卡常数。
现在请你帮忙求出所有卡常数。
【输入】
无
【输出】
输出一行表示所有的卡常数,用空格分隔。
【输入样例】
无
【输出样例】
无参考程序
- #include<bits/stdc++.h>
- using namespace std;
- int main()
- {
- int n1,n2;
- for(int i=1000; i<=9999; i++)
- {
- n1=i/100;
- n2=i%100;
- if((n1+n2)*(n1+n2)==i)
- {
- cout<<i<<" ";
- }
- }
- return 0;
- }