102 次方求模

来源:互联网 发布:出塞曲性人盒 知乎 编辑:程序博客网 时间:2024/06/05 11:31


次方求模

时间限制:1000 ms  |  内存限制:65535 KB
难度:3
描述

求a的b次方对c取余的值

 

输入
第一行输入一个整数n表示测试数据的组数(n<100)
每组测试只有一行,其中有三个正整数a,b,c(1=<a,b,c<=1000000000)
输出
输出a的b次方对c取余之后的结果
样例输入
32 3 53 100 1011 12345 12345
样例输出
3110481

//注意:1=<a,b,c<=1000000000#include<iostream>#include<cstdio>using namespace std;long long mod(long long a,long long b,long long c){    long long t;    if(a==0 || c==1) return 0;    if(b==0) return 1;    if(b%2) return ((a%c)*mod(a,b-1,c))%c;    t=mod(a,b/2,c);    return (t*t)%c;}int main(){    long long n,a,b,c;    scanf("%lld",&n);    while(n--)    {        scanf("%lld%lld%lld",&a,&b,&c);        printf("%lld\n",mod(a,b,c));    }}


0 0
原创粉丝点击