生活大爆炸版石头剪刀布

大模拟。

#include <iostream>
#include<algorithm>
#include <cstdio>
using namespace std;
#define scy(x) freopen(x".in","r",stdin);freopen(x".out","w",stdout);
inline int read(){
  int x=0,f=1;
  char ch=getchar();
  while(ch<'0'||ch>'9'){
    if(ch=='-') f=-1;
    ch=getchar();
  }
  while(ch>='0'&&ch<='9'){
    x=(x<<1)+(x<<3)+(ch^48);
    ch=getchar();
  }
  return x*f;
}
int main(){
  scy("in");
    int n,na,nb,x,y,xa[201],xb[201],i,j,a,ans,bns;
    n=read(),na=read(),nb=read();
    for(i=1;i<=na;i++)
    {
        x=read();
        xa[i]=x;
    }
    for(j=1;j<=nb;j++)
    {
        y=read();
        xb[j]=y;
    }
    ans=0;
    bns=0;
    i=0;
    j=0;
    for(a=1;a<=n;a++)
    {
        i++;
        j++;
        if(i>na)i=1;
        if(j>nb)j=1;
        if(xa[i]==0&&xb[j]==1)bns++;
        if(xa[i]==0&&xb[j]==2)ans++;
        if(xa[i]==0&&xb[j]==3)ans++;
        if(xa[i]==0&&xb[j]==4)bns++;
        if(xa[i]==1&&xb[j]==0)ans++;
        if(xa[i]==1&&xb[j]==2)bns++;
        if(xa[i]==1&&xb[j]==3)ans++;
        if(xa[i]==1&&xb[j]==4)bns++;
        if(xa[i]==2&&xb[j]==0)bns++;
        if(xa[i]==2&&xb[j]==1)ans++;
        if(xa[i]==2&&xb[j]==3)bns++;
        if(xa[i]==2&&xb[j]==4)ans++;
        if(xa[i]==3&&xb[j]==0)bns++;
        if(xa[i]==3&&xb[j]==1)bns++;
        if(xa[i]==3&&xb[j]==2)ans++;
        if(xa[i]==3&&xb[j]==4)ans++;
        if(xa[i]==4&&xb[j]==0)ans++;
        if(xa[i]==4&&xb[j]==1)ans++;
        if(xa[i]==4&&xb[j]==2)bns++;
        if(xa[i]==4&&xb[j]==3)bns++;
    }
   printf("%d %d",ans,bns);
    //0——剪刀    1——石头    2——布     3——蜥蜴人     4——斯波克
    return 0;
}
原文地址:https://www.cnblogs.com/scy-fisheep/p/13803141.html