描述
你的任务是求N的M次方的结果。简单吧!
输入
输入有多组。每一组两个非负整数N(N<10000)和M(M<10000),中间一个空格,每一组数据占一行。
输出
每组结果占一行。结果在long long范围之内哦!!约定,0的0次方等于1。
样例输入
2 2样例输出
4提示
~~~
题目来源
qingyezhu
题目上传者
qingyezhu
解题思路:模板题。
AC代码:
#include<stdio.h> int main() { __int64 N,M,sum; __int64 pow(__int64 n,__int64 m); while(scanf("%I64d %I64d",&N,&M)!=EOF) { if(N==0&&M==0) printf("1\n"); else { sum=pow(N,M); printf("%I64d\n",sum); } } return 0; } __int64 pow(__int64 n,__int64 m) { __int64 s=1; while(m>0) { if(m&1) s*=n; n*=n; m=(m>>1); } return s; }