Oj.Nbdp.Net
初赛题库
问题
状态
排名
团队
题解
课程
Login
问题 5433 --学生分班
5433: 学生分班
警告!
题目
状态
题解
题目描述
有 $n$ 个男生,学号为 $1$ 到 $n$,每人有一个 $H$ 值和 $G$ 值。将这 $n$ 个男生分班,要求如下: 1. 分班必须按顺序,不能在一个班上出现学号不连续的情况且每个学生必须要被分到某个班上。 2. 每班的 $H$ 值定义为该班 $H$ 值最高的同学的 $H$ 值。所有班的 $H$ 值之和不得超过 $Limit$。 3. 每个班的 $G$ 值为该班中所有同学的 $G$ 值之和。在满足条件 $1,2,3$ 的情况下,分班应使得 $G$ 值最高的那个班的 $G$ 值最小。
输入
第一行仅 $2$ 个正整数 $n,Limit$,分别为学生数量和 $H$ 值之和的上限。 接下来 $n$ 行每行 $2$ 个正整数 $H_i,G_i$,分别为学号为 $i$ 的学生的 $H$ 值和 $G$ 值。
输出
仅 $n$ 个正整数,表示满足分班的条件下 $n$ 值最高的班级的 $n$ 值。
样例输入输出
输入#1
复制
4 6 4 3 3 5 2 2 2 4
输出#1
复制
8
提示
【样例说明】 分班按照 $(1,2)$、$(3,4)$ 进行,这时班级 $H$ 值之和为 $4+2=6\leq Limit$,而 $G$ 值最高的班级为 $(1,2)$,为 $8$。容易看出该分班方案可得到最佳答案。 【数据范围】 对于 $20\%$ 的数据,$n,Limit \leq 100$; 对于 $40\%$ 的数据,$n \leq 1000$; 对于 $100\%$ 的数据,$1 \leq n,G_i \leq 20000$,$1 \leq H_i,Limit \leq 10^7$。
发表题解
序号
标题
作者
发表时间
费用
订购数
操作
题目信息
提交
难度
未评定
标签
点击显示
if ($pr_flag) { ?>
递交数
1
已通过
1
} ;?>
通过率
100%
时间限制
1 秒
内存限制
128 MB
来源
收藏
标签云
模拟
数学与数论
动态规划
贪心
字符串
排序
枚举
数组与串
深搜
高精度
循环结构
递推
递归
二分三分
宽搜
背包
质数
线段树
分治
N进制
图论
队列
最短路
堆
树
并查集
栈
状态压缩
分支结构
几何
博弈论
生成树
顺序结构
离散化
hash表
位运算
单调队列
树状数组
KMP
字典树
二分图
数学期望
AC自动机
树链剖分
差分约束
数位动态规划
函数与过程
网络流
单调栈
前缀和