#include<iostream>
using namespace std;
int game(int a,int b)//创建一个函数来判断a对b的输赢
{
if(a==0)
{
if(b==2||b==3)
{
return 1;//赢
}
else if(b==0)
{
return 0;//平
}
else
{
return -1;//输
}
}
else if(a==1)
{
if(b==0||b==3)
{
return 1;
}
else if(b==1)
{
return 0;
}
else
{
return -1;
}
}
else if(a==2)
{
if(b==1||b==4)
{
return 1;
}
else if(b==2)
{
return 0;
}
else
{
return -1;
}
}
else if(a==3)
{
if(b==2||b==4)
{
return 1;
}
else if(b==3)
{
return 0;
}
else
{
return -1;
}
}
else
{
if(b==0||b==1)
{
return 1;
}
else if(b==4)
{
return 0;
}
else
{
return -1;
}
}
}
int main()
{
int n,la,lb;
cin>>n;//获取总局数
cin>>la;//获取a的周期
cin>>lb;//获取b的周期
int i=0;
int a[201]={0};
int b[201]={0};
//直接把n次a出什么给赋给数组
for(i=0;i<la;i++)
{
cin>>a[i];
}
for(i=la;i<n;i++)
{
a[i]=a[i-la];
}
//直接把n次b出什么给赋给数组
for(i=0;i<lb;i++)
{
cin>>b[i];
}
for(i=lb;i<n;i++)
{
b[i]=b[i-lb];
}
//开始比较
int sa=0;//记录a的分值
int sb=0;//记录b的分值
for(i=0;i<n;i++)
{
int p=game(a[i],b[i]);//调用函数判断胜负平
if(p==1)
{
sa++;
}
if(p==-1)
{
sb++;
}
}
cout<<sa<<" "<<sb<<endl;
system("pause");
return 0;
}
洛谷p1328(c++题解)
最新推荐文章于 2024-06-04 22:50:27 发布