题目:
立方尾不变
有些数字的立方的末尾正好是该数字本身。
比如:1,4,5,6,9,24,25,…
请你计算一下,在10000以内的数字中(指该数字,并非它立方后的数值),符合这个特征的正整数一共有多少个。
请提交该整数,不要填写任何多余的内容。
———————————————————————————————————
这里说末尾是数字的本身,那么根据数字本身来每次模上对应的数,再比较一下即可
5 ——10(模的数)
15——100
#include <iostream> using namespace std; int main() { long long ii; int count = 0; int s; for(long long i=1;i<10000;i++) //这里注意要用long long { if(i<10) s = 10; else if(i<100) s = 100; else if(i<1000) s = 1000; else if(i<10000) s = 10000; if((i*i*i)%s == i) //如果定义的是int i,那么i*i*i很有可能 count++; } cout<<count; //结果36 return 0; }
注意:for循环中定义的i的类型,i * i * i 的结果不能超过int型