问题标题: 酷町堂:nani纳尼NANI

0
0
已解决
汪宇航
汪宇航
新手启示者
新手启示者
  • /*
    999 998 997 996 995 994 993 992 991 990
    */
    #include<bits/stdc++.h>
    using namespace std;
    long long a[15],b[12],s,t;
    long long gcd(long long x,long long y){
        while(x%y!=0){
            x%=y;
            int r=x;
            x=y;
            y=r;
        }
        return y;
    }
    long long lcm(long long x,long long y){
        return x*y/gcd(x,y);
    }
    int main(){
        int n;
        cin>>n;
        for(int i=1;i<=n;i++){
            cin>>a[i]>>b[i];
        }
        for(int i=1;i<=n;i++){
            t=1;
            for(int j=1;j<=n;j++){
                if(i==j)continue;
                t=lcm(t,a[j]);
            }
            long long f=t;
            while(t%a[i]!=1){
                t+=f;
            }
            s+=t*b[i];
            // cout<<s<<endl;
        }
        long long money=a[1];
        for(int i=2;i<=n;i++){
            money=lcm(money,a[i]);
        }
        s%=money;
        cout<<s;
        return 0;
    }

     

汪宇航在2022-01-04 20:40:34追加了内容

TLE60

一个点WA


0
0
我要回答