社区讨论

求助,为什么30

P1328[NOIP 2014 提高组] 生活大爆炸版石头剪刀布参与者 4已保存回复 5

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
5 条
当前快照
1 份
快照标识符
@mi6ubhfg
此快照首次捕获于
2025/11/20 10:56
4 个月前
此快照最后确认于
2025/11/20 10:56
4 个月前
查看原帖
CPP
#include<iostream>
using namespace std;
int cmp(int a,int b)
{
	if (a==0&&b==0) return -1;
    if (a==0&&b==1) return 0;
    if (a==0&&b==2) return 1;	
    if (a==0&&b==3) return 1;	
    if (a==0&&b==4) return 0;
	if (a==1&&b==0) return 1;
    if (a==1&&b==1) return -1;
    if (a==1&&b==2) return 0;
    if (a==1&&b==3) return 1;
    if (a==1&&b==4) return 0;
	if (a==2&&b==0) return 0;
    if (a==2&&b==1) return 1;
    if (a==2&&b==2) return -1;
    if (a==2&&b==3) return 0;
    if (a==2&&b==4) return 1;
	if (a==3&&b==0) return 0;
    if (a==3&&b==1) return 0; 
    if (a==3&&b==2) return 1;
    if (a==3&&b==3) return -1;
    if (a==3&&b==4) return 1;
	if (a==4&&b==0) return 1;
    if (a==4&&b==1) return 1;
    if (a==4&&b==2) return 0;
    if (a==4&&b==3) return 0;
    if (a==4&&b==4) return -1;
		else return -1;
}

int main()
{
	int n,nb,na,i,cy=0;
	int a[1000],b[1000];
	int a1=0,b1=0;
	cin>>n>>na>>nb;
	if (na>nb) 
    {
    if (n % na == 0) cy=n/na;
    else cy=n/na+1;
    }
	else 
    {
    if (n % nb ==0 ) cy=n/nb;
    else cy=n/nb+1;
    }
	for(i=1;i<=na;i++)cin>>a[i];
	for(i=1;i<=nb;i++)cin>>b[i];
	for(i=na+1;i<=na*cy;i++)a[i]=a[i-na];
	for(i=nb+1;i<=nb*cy;i++)b[i]=b[i-nb];
	for(i=1;i<=n;i++)
	{
		if (cmp(a[i],b[i])==1) a1++;
		if (cmp(a[i],b[i])==0) b1++;
	}
	cout<<a1<<" "<<b1<<endl;
	//for(i=1;i<=n;i++)cout<<a[i]<<" ";
	//cout<<endl;
	//for(i=1;i<=n;i++)cout<<b[i]<<" ";
	return 0;
	}

回复

5 条回复,欢迎继续交流。

正在加载回复...