[noip2014tg] 生活大爆炸版石頭剪刀布

題目鏈接

題解:手動打表……

#include <iostream>
#include <cstdio>
using namespace std;
int x,y;
int n,na,nb;
int s1,s2;
int a[1000],b[1000];
void ask(int x,int y)
{
    if(a[x]!=b[y])
    {
        if(a[x]==0)
        {
            if(b[y]==3||b[y]==2)
            s1++;
            else s2++;
        }
        if(a[x]==1)
        {
            if(b[y]==3||b[y]==0)
            s1++;
            else s2++;
        }
        if(a[x]==2)
        {
            if(b[y]==1||b[y]==4)
            s1++;
            else s2++;
        }
        if(a[x]==3)
        {
            if(b[y]==2||b[y]==4)
            s1++;
            else s2++;
        }
        if(a[x]==4)
        {
            if(b[y]==0||b[y]==1)
            s1++;
            else s2++;
        }
    }
}
void init()
{
    cin>>n>>na>>nb;
    for(int i=1;i<=na;i++)
    scanf("%d",&a[i]);
    for(int i=1;i<=nb;i++)
    scanf("%d",&b[i]);
}
void work()
{
    for(int i=1;i<=n;i++)
    {
        x++;y++;
        if(x>na) x=1;
        if(y>nb) y=1;
        ask(x,y);
    }
    cout<<s1<<" "<<s2<<endl;
}
int main()
{
    init();
    work();
    return 0;
}
發佈了138 篇原創文章 · 獲贊 0 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章