1090: 整数幂(多实例测试)
题目描述:求A^B的最后三位数表示的整数(1<=A,B<=1000)
输入:第一行输入一个整数n,表示有n个测试实例,接着有n行,每行一个实例,给出两个正整数A,B
输出:针对每个测试实例,输出A^B的最后三位(没有前导0) ,单独占一行。
样例输入
2
2 3
12 6
样例输出
8
984
做法一:
解题思路:根据输入的n创建二维数组;输入全部数据;计算数据并输出全部结果;
代码:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main(){
int n,i,j;
int **p;
scanf("%d",&n);
p=(int**)calloc(n,sizeof(int*));
for(i=0;i<n;i++)
p[i]=(int*)calloc(2,sizeof(int));
for(i=0;i<n;i++)
for(j=0;j<2;j++)
scanf("%d",&p[i][j]);
for(i=0;i<n;i++){
long long c=pow(p[i][0],p[i][1]);
printf("%d\n",c%1000);
}
for(i=0;i<n;i++)
free(p[i]);
free(p);
}
结果:
该博客介绍了如何解决求A^B最后三位数的问题,其中A和B都在1到1000之间。给出了两种解题思路,包括创建二维数组处理多实例测试和逐组输入输出数据的方法,并提供了使用C语言实现的代码示例。此外,还提到在调用math库的pow()函数时,可以接受int型参数并自动转换为double型。
订阅专栏 解锁全文
653

被折叠的 条评论
为什么被折叠?



