求助

P1328 [NOIP2014 提高组] 生活大爆炸版石头剪刀布

```cpp cin>>n>>na>>nb; for(int i=1;i<=na;i++) { cin>>a[i]; } for(int i=1;i<=nb;i++) { cin>>b[i]; } for(int i=na+1;i<=n;i++) { a[i]=a[i-na]; } for(int i=nb+1;i<=n;i++) { b[i]=b[i-nb]; } ``` 这一段我是这样写的 后面两个循环是去找下一个周期
by so_yaya @ 2023-08-22 09:34:19


@[guoxiaotong1234](/user/946318) x要赋值给xa[i],x不是输入值吗....你可以直接输入一个数组,这个数组是用来循环周期的
by IKUN_LMX @ 2023-08-22 09:35:06


@[guoxiaotong1234](/user/946318) for循环用来统计比较次数的,多看看题目吧。。。。
by IKUN_LMX @ 2023-08-22 09:36:52


@[guoxiaotong1234](/user/946318) if是用来判断需不需要从头开始,不会的话可以问问你身边的人
by IKUN_LMX @ 2023-08-22 09:38:09


@[IKUN_LMX](/user/947040) 蟹蟹你,我再好好看看题
by guoxiaotong1234 @ 2023-08-22 09:42:21


@[so_yaya](/user/920133) 蟹谢( ̄▽ ̄)我改改看...
by guoxiaotong1234 @ 2023-08-22 09:43:39


@[so_yaya](/user/920133) ``` cin>>n>>na>>nb;//输入 for(int i=1;i<=na;i++){ cin>>xa[i]; } for(int j=1;j<=nb;j++){ cin>>xb[j]; } //0——剪刀 1——石头 2——布 3——蜥蜴人 4——斯波克 for(int i=na+1;i<=n;i++) { xa[i]=xa[i-na]; } for(int i=nb+1;i<=n;i++) { xb[i]=xb[i-nb]; } //剪刀赢布/蜥蜴人 0赢2/3 //石头赢剪刀/蜥蜴人 1赢0/3 //布赢石头/波斯克 2赢1/4 //蜥蜴人赢布/波斯克 3赢2/4 //波斯克赢剪刀/石头 4赢0/1 if(xa[i]==0&&xb[j]==2) ans++;//ans++为小A赢 if(xa[i]==0&&xb[j]==3) ans++; if(xa[i]==0&&xb[j]==1) num++;//num++为小B赢 if(xa[i]==0&&xb[j]==4) num++; if(xa[i]==1&&xb[j]==0) ans++; if(xa[i]==1&&xb[j]==3) ans++; if(xa[i]==1&&xb[j]==2) num++; if(xa[i]==1&&xb[j]==4) num++; if(xa[i]==2&&xb[j]==1) ans++; if(xa[i]==2&&xb[j]==4) ans++; if(xa[i]==2&&xb[j]==0) num++; if(xa[i]==2&&xb[j]==3) num++; if(xa[i]==3&&xb[j]==2) ans++; if(xa[i]==3&&xb[j]==4) ans++; if(xa[i]==3&&xb[j]==0) num++; if(xa[i]==3&&xb[j]==1) num++; if(xa[i]==4&&xb[j]==0) ans++; if(xa[i]==4&&xb[j]==1) ans++; if(xa[i]==4&&xb[j]==2) num++; if(xa[i]==4&&xb[j]==3) num++;//同上 cout<<ans<<" "<<num;//输出小A,小B的得分 ``` **求调QAQ**
by guoxiaotong1234 @ 2023-08-22 09:50:44


``` #include<bits/stdc++.h> using namespace std; int i,j,n,na,nb,aj,bj,a[201],b[201],s,c; int main(){ ios::sync_with_stdio(false); cin>>n>>na>>nb; for(int i=1;i<=na;i++){ cin>>aj; a[i]=aj; } for(int j=1;j<=nb;j++){ cin>>bj; b[j]=bj; } s=0; c=0; i=0; j=0; for(int k=1;k<=n;k++){ i++; j++; if(i>na)i=1; if(j>nb)j=1; if(a[i]==0&&b[j]==1)c++; if(a[i]==0&&b[j]==2)s++; if(a[i]==0&&b[j]==3)s++; if(a[i]==0&&b[j]==4)c++; if(a[i]==1&&b[j]==0)s++; if(a[i]==1&&b[j]==2)c++; if(a[i]==1&&b[j]==3)s++; if(a[i]==1&&b[j]==4)c++; if(a[i]==2&&b[j]==0)c++; if(a[i]==2&&b[j]==1)s++; if(a[i]==2&&b[j]==3)c++; if(a[i]==2&&b[j]==4)s++; if(a[i]==3&&b[j]==0)c++; if(a[i]==3&&b[j]==1)c++; if(a[i]==3&&b[j]==2)s++; if(a[i]==3&&b[j]==4)s++; if(a[i]==4&&b[j]==0)s++; if(a[i]==4&&b[j]==1)s++; if(a[i]==4&&b[j]==2)c++; if(a[i]==4&&b[j]==3)c++; } cout<<s<<" "<<c; return 0; } ```
by unhappysheep @ 2023-08-22 09:55:41


@[unhappysheep](/user/938571) 蟹谢啦
by guoxiaotong1234 @ 2023-08-22 09:59:07


|