P1328 生活大爆炸版石头剪刀布

一道模拟题,20个if搞定

#include<cstdio>
using namespace std;
int a[202], b[202];
int main()
{
    int n, na, nb, sa = 0, sb = 0;
    scanf("%d %d %d", &n, &na, &nb);
    for(int i = 0; i < na; i++)
        scanf("%d", &a[i]);
    for(int i = 0; i < nb; i++)
        scanf("%d", &b[i]);
    for(int i = 0; i < n; i++)
    {
        if(a[i % na] == 0 && b[i % nb] == 1) sb++;
        if(a[i % na] == 0 && b[i % nb] == 2) sa++;
        if(a[i % na] == 0 && b[i % nb] == 3) sa++;
        if(a[i % na] == 0 && b[i % nb] == 4) sb++;
        if(a[i % na] == 1 && b[i % nb] == 0) sa++;
        if(a[i % na] == 1 && b[i % nb] == 2) sb++;
        if(a[i % na] == 1 && b[i % nb] == 3) sa++;
        if(a[i % na] == 1 && b[i % nb] == 4) sb++;
        if(a[i % na] == 2 && b[i % nb] == 0) sb++;
        if(a[i % na] == 2 && b[i % nb] == 1) sa++;
        if(a[i % na] == 2 && b[i % nb] == 3) sb++;
        if(a[i % na] == 2 && b[i % nb] == 4) sa++;
        if(a[i % na] == 3 && b[i % nb] == 0) sb++;
        if(a[i % na] == 3 && b[i % nb] == 1) sb++;
        if(a[i % na] == 3 && b[i % nb] == 2) sa++;
        if(a[i % na] == 3 && b[i % nb] == 4) sa++;
        if(a[i % na] == 4 && b[i % nb] == 0) sa++;
        if(a[i % na] == 4 && b[i % nb] == 1) sa++;
        if(a[i % na] == 4 && b[i % nb] == 2) sb++;
        if(a[i % na] == 4 && b[i % nb] == 3) sb++;
    }
    printf("%d %d", sa, sb);
}

 

上一篇:JS学习总结(红宝书第五章----基本引用类型)


下一篇:使用深度优先+递归+剪枝解决八皇后问题