hdoj-2035-人见人爱a^b

题目:人见人爱a^b
代码:(其实很简单)

#include<stdio.h>
int main()
{
	int a,b,t=0,i,j;
	while(scanf("%d%d",&a,&b)!=EOF)
	{
		if(a==0 && b==0)break;
		for(i=2,t=a;i<=b;i++)
		{
			if(t*a>=1000)
			{
				t=(t*a)%1000;
			}
			else t=t*a;
		}
		printf("%d
",t);
	}
	return 0;
}//只需保留后三位

看到题目的时候就清楚这是一个大数的运算,本来的想法是存字符串,但是怎么想也不明白。后来了解到每一次只需要存最后三位就可以,不必存a^b那么大的数。
t初始化存a的值,判断每一次的t*a是否大于1000,如果大于1000,存最后三位数。这里有一个注意点: i要从2开始

原文地址:https://www.cnblogs.com/qq952693358/p/5243454.html