L1-056 猜数字 (20 分)————————效率不高,直接水过~~~~~~

caoxingyu

关注

阅读 49

2022-07-18


//简单题
#include<bits/stdc++.h>
using namespace std;
struct people{
string name;
int digit;
}a[20000];
int main()
{
int n,sum=0;
cin>>n;
for(int i=0;i<n;i++)
{
cin>>a[i].name>>a[i].digit;
sum+=a[i].digit;
}
int ave=sum/n;
int ban=ave/2;
int k=0,b[20000],r;
for(int i=0;i<n;i++)
{
b[k++]=abs(a[i].digit-ban);
}
sort(b,b+k);
for(int i=0;i<n;i++)
{
if(abs(a[i].digit-ban)==b[0])
{
r=i;
break;
}
}
cout<<ban<<" "<<a[r].name<<endl;
return 0;
}

​​题目连接​​


精彩评论(0)

0 0 举报