2289 - 小东的计算器
时间限制 : 1 秒
内存限制 : 128 MB
话说小东是一个懒学生,他每晚做数学作业的时候都不愿意自己手算,所以他去文具店买了一个计算器。谁知道这个计算器的显示屏是坏的,所有运算结果的后四位都显示不了。恰巧老师让小东算M的N次方是多少,小东只能求助于你了。
例如:10的5次方,计算器后四位显示的是0000,10的3次方显示的是1000,2的3次方显示的是0008(计算器总是会将结果前的显示区域用0填充)
题目输入
每行两个数字M和N(用空格分开),0 ≤ m,n ≤ 10000,当m和n同时为0时输入结束。
题目输出
计算器后四位应该显示的内容
输入/输出样例
输入格式
2 3 10 5 0 0
输出格式
0008 0000
C语言解答
#include <stdio.h> int main() { int m,n; int total; while(scanf("%d %d",&m,&n)) { if(m==0&&n==0) break; total=1; while(n--) { total=total*m%10000; } printf("%04d\n",total); } }
C++解答
#include<stdio.h> int main(){ int a, b; while(scanf("%d%d", &a, &b) != EOF){ if(a == 0 && b == 0){ return 0; } int ans = 1; for(int i = 0; i < b; i++){ ans = (((a % 1000) * (ans % 1000)) + 1000) % 1000; } printf("%04d\n", ans); } }