【模拟】洛谷 P1328 NOIP2014提高组 day1 T1 生活大爆炸版石头剪刀布

把所有情况打表,然后随便暴力。

 1 #include<cstdio>
 2 using namespace std;
 3 int n,an,bn,p1,p2;
 4 int a[10001],b[10001];
 5 bool f[6][6];
 6 int ans1,ans2;
 7 void init()
 8 {
 9     f[0][0]=0; f[0][0]=0;
10     f[0][1]=0; f[1][0]=1;
11     f[1][1]=0; f[1][1]=0;
12     f[0][2]=1; f[2][0]=0;
13     f[1][2]=0; f[2][1]=1;
14     f[2][2]=0; f[2][2]=0;
15     f[0][3]=1; f[3][0]=0;
16     f[1][3]=1; f[3][1]=0;
17     f[2][3]=0; f[3][2]=1;
18     f[3][3]=0; f[3][3]=0;
19     f[0][4]=0; f[4][0]=1;
20     f[1][4]=0; f[4][1]=1;
21     f[2][4]=1; f[4][2]=0;
22     f[3][4]=1; f[4][3]=0;
23     f[4][4]=0; f[4][4]=0;
24 }
25 int main()
26 {
27     scanf("%d%d%d",&n,&an,&bn);
28     init();
29     for(int i=1;i<=an;i++) scanf("%d",&a[i]);
30     for(int i=1;i<=bn;i++) scanf("%d",&b[i]);
31     for(int i=1;i<=n;i++)
32       {
33           p1++; p2++;
34           if(p1>an) p1=1;
35           if(p2>bn) p2=1;
36           ans1+=f[a[p1]][b[p2]];
37           ans2+=f[b[p2]][a[p1]];
38       }
39     printf("%d %d
",ans1,ans2);
40     return 0;
41 }
原文地址:https://www.cnblogs.com/autsky-jadek/p/4088867.html