幂的末尾
题目描述
幂 a b a^b ab 的末 3 3 3 位数是多少?
输入格式
两个正整数 a a a, b b b。 1 ≤ a ≤ 100 1 \le a \le 100 1≤a≤100, 1 ≤ b ≤ 10000 1 \le b \le 10000 1≤b≤10000。
输出格式
从高位到低位输出幂的末三位数字,中间无分隔符。若幂本身不足三位,在前面补零。
样例 #1
样例输入 #1
2 3
样例输出 #1
008
样例 #2
样例输入 #2
7 2011
样例输出 #2
743
代码内容
// #include <iostream>
// #include <algorithm>
// #include <cstring>
// #include <stack>//栈
// #include <deque>//堆/优先队列
// #include <queue>//队列
// #include <map>//映射
// #include <unordered_map>//哈希表
// #include <vector>//容器,存数组的数,表数组的长度
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const ll mod=1e3;
int main()
{
ll a,b;
cin>>a>>b;
ll ans=1;
a%=mod;
for(ll i=1;i<=b;i++)
{
ans*=a;
ans%=mod;
}
printf("%03lld",ans);
return 0;
}