传送门
code
#includeusing namespace std; int n,na,nb,a[205],b[205],now,ansa=0,ansb=0; int check(int x,int y) { int xa=a[x],yb=b[y]; if(xa==yb) return 0;//平局 if(((xa==0&&(yb==2||yb==3))||(xa==1&&yb==3))||((xa==2||xa==3)&&yb==4)) return 1;//赢 if(((yb==0&&(xa==2||xa==3))||(yb==1&&xa==3))||((yb==2||yb==3)&&xa==4)) return -1;//输 if((xa==0&&(yb==1||yb==4))||(xa==1&&(yb==2||yb==4))||(xa==2&&yb==3)) return -1; return 1; } int main() { scanf("%d%d%d",&n,&na,&nb); for(int i=1;i<=na;i++) scanf("%d",&a[i]); for(int i=1;i<=nb;i++) scanf("%d",&b[i]); for(now=1;now<=n;now++) { int aa=now%na; int bb=now%nb; if(aa==0) aa=na; if(bb==0) bb=nb; int c=check(aa,bb); if(c==1) ansa++; if(c==-1) ansb++; //cout<


![[NOIP2014 提高组] 生活大爆炸版石头剪刀布 [NOIP2014 提高组] 生活大爆炸版石头剪刀布](http://www.mshxw.com/aiimages/31/290471.png)
