42 lines
776 B
C++
42 lines
776 B
C++
|
#include <iostream>
|
|||
|
#include<cstdio>
|
|||
|
#include<algorithm>
|
|||
|
#include <cmath>
|
|||
|
using namespace std;
|
|||
|
const int mod=1000;
|
|||
|
int qpow(int n,int k)
|
|||
|
{
|
|||
|
int res=1,now=n%mod;//Ҫmod<6F><64><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̫<EFBFBD><CCAB>10e6*10e6
|
|||
|
while(k>0)
|
|||
|
{
|
|||
|
if(k&1==1)
|
|||
|
{
|
|||
|
res=res*now%mod;
|
|||
|
}
|
|||
|
k=k>>1;
|
|||
|
now*=now;
|
|||
|
now%=mod;
|
|||
|
}
|
|||
|
return res;//<2F><>return
|
|||
|
}
|
|||
|
int main()
|
|||
|
{
|
|||
|
int t,t1=0;
|
|||
|
int n,k;
|
|||
|
int res1,res2;
|
|||
|
double z;
|
|||
|
double k10,cur;
|
|||
|
scanf("%d",&t);
|
|||
|
while(t--)
|
|||
|
{
|
|||
|
scanf("%d%d",&n,&k);
|
|||
|
k10=log10(n)*k;
|
|||
|
cur=modf(k10,&z);
|
|||
|
res1=floor(pow(10,cur)*100);
|
|||
|
res2=qpow(n,k);
|
|||
|
//%03d 001 000 <20><><EFBFBD><EFBFBD>1ǰ<31><C7B0><EFBFBD><EFBFBD>0
|
|||
|
printf("Case %d: %d %03d\n",++t1,res1,res2);//û<>У<EFBFBD>int)<29><><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
}
|
|||
|
return 0;
|
|||
|
}
|