261 条题解

  • 0
    @ 2026-3-12 17:02:34

    #include <bits/stdc++.h> using namespace std; // 判断 a 是否赢 b bool win(int a, int b) { if( (a == 0 && b == 2) || (a == 2 && b == 5) || (a == 5 && b == 0)) return true; else return false; } int mo(int a, int b,int c) { if(a%b!=0) return a%b; else return c; } int main() { int N, NA, NB; int A[200], B[200]; int winA = 0, winB = 0; 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 = 1; i <= N; i++) { int a_move = A[mo(i,NA,NA)]; int b_move = B[mo(i,NB,NB)]; if (win(a_move, b_move)) { winA++; } else if (win(b_move, a_move)) { winB++; } } if (winA > winB) { cout << "A" <<winA-winB<< endl; } else if (winB > winA) { cout << "B" << winB-winA<<endl; } else { cout << "draw" << endl; }

    return 0;
    

    }

    信息

    ID
    104
    时间
    1000ms
    内存
    256MiB
    难度
    6
    标签
    递交数
    237
    已通过
    64
    上传者