关于信奥一本通1186玄学问题
查看原帖
关于信奥一本通1186玄学问题
350062
白猫永远的神楼主2022/3/31 15:25
//100分代码
#include<algorithm>
#include<iostream>
#include<cstring>
#include<string>
#include<cstdio>
#include<cmath>
using namespace std;
int l,n,x,a[150]; //数据范围+-50,计数下标不能是负数,所以所有数+60就可以避免问题,输出时都减去60就可避免这个问题
int main()
{
	cin>>n;
	for(int i=0;i<n;i++)
	{
		cin>>x;
		a[x+60]++;
	}
	for(int i=0;i<=150;i++)
	{
		if(a[i]*2>n)
		{
		    cout<<i-60;
		    l=1;
		}
	}
	if(l==0)
		cout<<"no";
	return 0;
}

在看一下80分代码,很玄学,不知道为什么把22行换成return 0;会错俩个测试点

#include<algorithm>
#include<iostream>
#include<cstring>
#include<string>
#include<cstdio>
#include<cmath>
using namespace std;
int s,l,n,x,a[150]; //数据范围+-50,计数下标不能是负数,所以所有数+60就可以避免问题,输出时都减去60就可避免这个问题
int main()
{
	cin>>n;
	for(int i=0;i<n;i++)
	{
		cin>>x;
		a[x+60]++;
	}
	for(int i=0;i<=150;i++)
	{
		if(a[i]>n/2)
		{
		    cout<<i-60;
		    return 0;
		}
	}
	cout<<"no";
	return 0;
}

2022/3/31 15:25
加载中...