zoukankan      html  css  js  c++  java
  • 洛谷 P2663 越越的组队

    题目描述

    班级要组织一场综合能力竞赛,全班同学(N(100以内)个,N是偶数)分成两队互相竞争。老师找到了越越并给了越越一张全班同学综合能力测试的成绩,要求他从全班同学中选出一半(他自己也可能被选),并要求这些同学综合能力测试的成绩之和在不超过班级总分一半的前提下尽量达到最高。这样分成的两队实力是最平均的。越越堆着满脸的笑容找到了你,你就帮他写一个程序吧。

    输入输出格式

    输入格式:

     

    第一行:学生个数N;第二行开始的N行每行一个同学的综合能力测试的成绩。

     

    输出格式:

     

    输出一个数:N/2个同学的综合能力测试的成绩之和在不超过班级总分一半的前提下尽量达到的最高值。

     

    输入输出样例

    输入样例#1: 复制
    8
    77
    77
    56
    77
    84
    77
    56
    46
    输出样例#1: 复制
    273

    说明

    样例解释:总分550;总分的一半275;选择4名同学56 77 84 56 77 达到总分273;273是不超过275的最大值。(另一队的和是277)两队实力最接近。

    思路:背包。

    #include<cstdio>
    #include<cstring>
    #include<iostream>
    #include<algorithm>
    using namespace std;
    int n,v;
    int num[110],f[10010];
    int main(){
        scanf("%d",&n);
        for(int i=1;i<=n;i++)
            scanf("%d",&num[i]),v+=num[i];
        v/=2;
        for(int i=1;i<=n;i++)
            for(int j=v;j>=num[i];j--)
                f[j]=max(f[j],f[j-num[i]]+num[i]);
        cout<<f[v];
    }
    细雨斜风作晓寒。淡烟疏柳媚晴滩。入淮清洛渐漫漫。 雪沫乳花浮午盏,蓼茸蒿笋试春盘。人间有味是清欢。
  • 相关阅读:
    时装画基础知识--如何画人体
    马士兵java视频学习顺序
    Mysql 中文字符乱码问题
    zendstudio 设置默认编码 utf-8 gbk
    MYSQL 本地无ROOT权限 忘记密码
    windows 3389 远程
    windows 老掉牙CMD的命令
    mysql-常用注入渗透手法
    ubuntu 添加多个IP
    windows下简单配置apache
  • 原文地址:https://www.cnblogs.com/cangT-Tlan/p/8029740.html
Copyright © 2011-2022 走看看