10:石头剪刀布
石头剪刀布是常见的猜拳游戏。石头胜剪刀,剪刀
#include <iostream>
using namespace std;
int a[105];
int b[105];
int main(){
int n, x, y;
cin >> n >> x >> y;
int a_win = 0, b_win = 0;
for (int i = 1; i <= x; i++)
cin >> a[i];
for (int i = 1; i <= y; i++)
cin >> b[i];
for (int i = 1; i <= n; i++)
{
a[i] = a[(i-1)%x +1];
b[i] = b[(i-1)%y+1];
if (a[i] == 0 && b[i] == 2) a_win++;
else if (a[i] == 0 && b[i] == 5) b_win++;
else if (a[i] == 2 && b[i] == 0) b_win++;
else if (a[i] == 2 && b[i] == 5) a_win++;
else if (a[i] == 5 && b[i] == 0) a_win++;
else if (a[i] == 5 && b[i] == 2) b_win++;
}
if (a_win > b_win) cout << "A" << endl;
else if (a_win < b_win) cout << "B" << endl;
else cout << "draw" << endl;}
看似很简单巧妙支持在;
a[i] = a[(i-1)%x +1];
b[i] = b[(i-1)%y+1];
通过+1放在最后保证余数不可能为0