题意很简单,就是保留A^B的最后三位,每次乘法后只保留最后三位数,直接%1000即可,注意把B等于1的情况单独考虑。
代码如下:
#include <stdio.h>
int main()
{
int a,b,c,i;
while (scanf("%d%d",&a,&b)!=EOF)
{
if(a==0&&b==0)return 0;
if(b==1){
c=a;printf("%d",a);continue;}
c=a;
for(i=1;i<b;i++)
{
c=(c*a)%1000;
}
printf("%d\n",c);
}
return 0;
}
仅代表个人观点,不喜勿喷,欢迎交流!