求助,两人周期长度一样时能过,反之不行
查看原帖
求助,两人周期长度一样时能过,反之不行
1062216
LandyLanty楼主2024/5/5 12:30
#include<bits/stdc++.h>
using namespace std;
int s[5][5];
void fuzhi(){
    s[0][1]=-1;
    s[0][2]=1;
    s[0][3]=1;
    s[0][4]=-1;
    s[1][2]=-1;
    s[1][3]=1;
    s[1][4]=1;
    s[2][3]=-1;
    s[2][4]=1;
    s[3][4]=1;
    for(int i=4;i>=0;i--)
        for(int j=4;j>=0;j--)
            s[i][j]=0-s[j][i];
}
int main(){
    fuzhi();
    int n,A,B,ans_a=0,ans_b=0,ta=0,tb=0;cin>>n>>A>>B;
    int a[A],b[B];
    for(int i=0;i<A;i++)
        cin>>a[i];
    for(int i=0;i<B;i++)
        cin>>b[i];
    for(int i=0;i<n;i++){
        if(s[a[ta]][b[tb]]==1)//谁得分
            ans_a++;
        else if(s[a[ta]][b[tb]]==-1)
            ans_b++;
        if(ta==A-1)//周期循环
            ta=0;
        else
            ta++;
        if(tb==B-1)
            tb=0;
        else
            tb++;
    }
    cout<<ans_a<<" "<<ans_b;
    return 0;
}
2024/5/5 12:30
加载中...