N.CSC的克隆体(ACM实验室新生赛)

(n%m)*(n%m)%m==(n*n)%m

(x+y+z)%m==(x%m+y%m+z%m)%m

#include<iostream>
#include<cstdio>
using namespace std;
 int n,m;
 int ans=0,tmp=0;
 char c[105];
 int a[105],b[105];
 int main()
 {
     cin>>n;
     while(n--)
     {
         ans=0;
         tmp=0;
         for(int i=1;i<=13;i++) 
         {        
             cin>>c[i];
             if(i%3==1)
                 a[++tmp]=c[i]-'0';
             else if(i%3==2)
                 b[tmp]=c[i]-'0';
         }
         if(c[13]=='X')
             a[tmp]=10;
         for(int i=1;i1)
             {
                 cnt*=a[i];
                 cnt%=11;
                 b[i]--;
             }
             ans+=cnt;
             ans%=11;
         }
         ans%=11;
         if(ans==a[tmp])
             cout<<"Its all right"<<endl;
         else
             cout<<"Oh no"<<endl;
     }
     return 0;
 }
 

发表评论