程式設計與演算法......
阿新 • • 發佈:2019-01-08
把一個整數的每個數位都平方後求和,又得到一個整數,我們稱這個整數為:位平方和。
對新得到的整數仍然可以繼續這一運算過程。比如,給定整數為4,則一系列的運算結果為:
16,37,58,89,....本題的要求是,已知一個整數x,求第n步的運算結果。
資料格式要求:輸入,兩個整數x n,中間以空格分開。表示求x的第n步位平方和。其中,x,y都大於0,且小於100000。
輸出,一個整數,表示所求結果。
例如,
輸入:4 3
則程式應該輸出:
58
再例如,
輸入:
1314 10
則程式應該輸出:
20
資源約定:
峰值記憶體消耗(含虛擬機器) < 256M
CPU消耗 < 1000ms
參考程式碼如下:
#include <stdio.h>
int main()
{
int m,n;
int temp,sum;
int i;
scanf("%d%d",&m,&n);
for(i=0;i<n;i++)
{
sum=0;
while(m){
sum=sum+(m%10)*(m%10);
m=m/10;
}
m=sum;
}
printf("%d\n",sum);
return 0;
}