7 条题解

  • -2
    @ 2024-10-17 21:24:34

    知识点:快速幂

    /*
    int      %o/%lo(八进制) %d/%i/%ld/%li(十进制) %x/%lx(十六进制)[如标名为o/lo/d/i/lo/li/x/lx即输出为八进制/十进制/十六进制]
    longlong %lld
    float    %f/%e
    double   %lf/%le
    char     %c
    char[]   %s
    'a'=97
    'z'=122
    'A'=65
    'Z'=90
    '0'=48
    '9'=57
    */
    #include <iostream>
    #include <iomanip>
    #include <cmath>
    #include <cstdio>
    #include <cstring>
    #include <algorithm>
    #include <ctime>
    #include <limits>
    #include <assert.h>
    #include <stdlib.h>
    using namespace std;
    #define LL long long
    #define ull unsigned long long
    const int N=1e5+10;
    const int INF=0x3f3f3f3f;
    const double pi=3.1416;
    LL a,b,p;
    long long power(long long a,long long b,long long p){
    	long long ans=1;
    	long long wp=a;
    	while(b){
    		if(b&1){
    			ans=ans*wp%p;
    		}
    		b>>=1;
    		wp=wp*wp%p;
    	}
    	return ans%p;
    }
    int main(){
    	cin>>a>>b>>p;
    	cout<<power(a,b,p)<<endl;
    return 0;
    }
    

    信息

    ID
    2
    时间
    1000ms
    内存
    128MiB
    难度
    8
    标签
    递交数
    3081
    已通过
    473
    上传者