题解

1 条题解

  • 0
    @ 2019-08-27 23:20:57

    快速幂模板
    答案为(x+m*10^k)%n
    快速幂O(logk)解题
    注意范围开下64位整数

    #include<cstdio>
    #include<algorithm>
    using namespace std;
    int n,m,k,x;
    long long pow(int a,int b){
        long long p=b,res=1,w=a;
        while(p){
            if(p&1) res=(res*w)%n;
            w=(w*w)%n;
            p>>=1;
        }
        return res;
    }
    int main(){
        scanf("%d %d %d %d",&n,&m,&k,&x);
        long long ans=x,po;
        po=pow(10,k);
        po=(m*po)%n;
        ans=(ans+po)%n;
        printf("%lld",ans);
    }
    
  • 1

信息

ID
1003
难度
4
分类
快速幂模拟 点击显示
标签
递交数
19
已通过
3
通过率
16%
上传者