我是靠谱客的博主 兴奋雪碧,最近开发中收集的这篇文章主要介绍【2018/09/08测试T1】【WOJ 3931】eat【题目】【分析】【代码】,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

【题目】

 

【分析】

看到题描是不是觉得特别吓人

其实这就是一道简单的签到题

这道题和图论没有太大关系,我们只要知道它是一个连通图就行了

我们按照每个城市的人数从大到小排序,每次都选出没选过的最大人数的城市,加进答案

由于每晚每个城市都会有 1 个人去乡下,所以第二天的答案减 1,第三天的答案减 1 再减 2,以此类推

最后在这些答案之中选出最大的就行了

 

【代码】

#include<cstdio>
#include<cstring>
#include<algorithm>
#define N 200005
using namespace std;
int a[N];
bool comp(int x,int y)
{
return x>y;
}
int main()
{
//	freopen("eat.in","r",stdin);
//	freopen("eat.out","w",stdout);
int n,m,i,x,y;
long long sum,num,maxn;
scanf("%d%d",&n,&m);
for(i=1;i<=n;++i)
scanf("%d",&a[i]);
//for(i=1;i<=m;++i)
scanf("%d%d",&x,&y);
sort(a+1,a+n+1,comp);
sum=0,num=0,maxn=0;
for(i=1;i<=n;++i)
{
num+=i-1;
sum+=a[i];
maxn=max(maxn,sum-num);
}
printf("%lld",maxn);
//	fclose(stdin);
//	fclose(stdout);
return 0;
}

 

最后

以上就是兴奋雪碧为你收集整理的【2018/09/08测试T1】【WOJ 3931】eat【题目】【分析】【代码】的全部内容,希望文章能够帮你解决【2018/09/08测试T1】【WOJ 3931】eat【题目】【分析】【代码】所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(51)

评论列表共有 0 条评论

立即
投稿
返回
顶部