• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
scorpiorax
博客园    首页    新随笔    联系   管理    订阅  订阅
cogs448

☆   输入文件:1.in   输出文件:1.out   简单对比
时间限制:1 s   内存限制:128 MB

【题目描述】 
在某次膜拜大会上,一些神牛被要求集体膜拜。这些神牛被奖励每人吃一些神牛果。但是,每个神牛的肚量不一样。为了不显得某些人吃得太多,决定两人一组,使得吃得最多的那组吃得尽量少。(神牛数为偶数) 
【输入格式】 
第一行一个整数 n。(n<=10000) 
第二行有 n 个正整数,为给定的一列数字,表示每个神牛能吃多少神牛果。(数字均小于 1000000000) 
文件名为“1.in”。 
【输出格式】 
一个正整数,吃的最多的一组神牛吃的个数的最小值。 
文件名为“1.out”。 
【输入样例】
4 
1 5 2 8 
【输出样例】 
9

 *****贪心,先从小到大的排列然后把头尾相加,求出最大值就是吃的最多一组神牛吃的个数

 

 1 #include<cstdio>
 2 #include<cstring>
 3 #include<algorithm>
 4 #include<cmath>
 5 using namespace std;
 6 int i,j,n,k,m,a[10005],mx;
 7 int cmp(int a,int b)
 8 {
 9     return a < b;
10 }
11 int main()
12 {
13     freopen("1.in","r",stdin);
14     freopen("1.out","w",stdout);
15     scanf("%d",&n);
16     for(i = 1;i <= n;i++)
17     {
18         scanf("%d",&a[i]);
19     }
20     sort(a + 1,a + 1 + n,cmp);
21     for(i = 1;i <= n / 2;i++)
22     {
23         mx = max(mx,a[i] + a[n - i + 1]);
24     }
25     printf("%d",mx);
26     return 0;
27 }

 

posted on 2018-10-24 17:55  scorpiorax  阅读(247)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3