第 1 题 自习 (selfstudy)
时间限制 1.0 s · 空间限制 256 MB · 82 个测试点 · 全文比较(过滤行末空格及文末回车)
本题使用文件输入输出:输入文件 selfstudy.in,输出文件 selfstudy.out。
题目描述
在 JOI 高中高一的第三个学期的
比太郎是一位高一学生。对于
- 行动 1:比太郎去上课。如果他去了课程
的一节课,那么他对课程 的理解程度会增加 。 - 行动 2:比太郎不去上课。他转而选择任意一门课,并且自学选中的那门课。如果他选中了课程
进行了时长为一课时的自学,那么他对课程 的理解程度会增加 。
一开始,对每门课的理解程度都为 0。由于比太郎想要在课后练习算法竞赛,他在非上课时间内不会学习。当第三个学期的所有课时结束后,期末考就会举行。
比太郎不想挂科。所以他想要最大化在期末考时对每门课的理解程度的最小值。
给定学期的长度,课程的数量,以及对理解程度的提升数值,请写一个程序计算在期末考时对每门课的理解程度的最小值的最大可能值。
输入格式
第一行,两个正整数
第二行,
第三行,
输出格式
输出一行,一个数,表示在期末考时对每门课的理解程度的最小值的最大可能值。
样例
样例 1
输入:
3 3
19 4 5
2 6 2输出:
18样例 2
输入:
2 1
9 7
2 6输出:
7样例 3
输入:
5 60000
630510219 369411957 874325200 990002527 567203997
438920902 634940661 593780254 315929832 420627496输出:
41397427274960样例 4
输入:
4 25
1 2 3 4
1 2 3 4输出:
48提示
【样例解释 #1】
举个例子,如果比太郎按如下方式学习,则他对课程 1,2,3 的理解程度将分别为 19, 18, 19。
- 第一周课程 1 的课:自学课程 2;
- 第一周课程 2 的课:自学课程 2;
- 第一周课程 3 的课:去上课程 3 的课;
- 第二周课程 1 的课:去上课程 1 的课;
- 第二周课程 2 的课:自学课程 3;
- 第二周课程 3 的课:去上课程 3 的课;
- 第三周课程 1 的课:自学课程 3;
- 第三周课程 2 的课:自学课程 2;
- 第三周课程 3 的课:去上课程 3 的课。
由于对每门课的最小的理解程度不能大于等于 19,输出 18。
这个样例满足子任务 3, 5 的限制。
【样例解释 #2】
这个样例满足子任务 1, 3, 5 的限制。
【样例解释 #3】
这个样例满足子任务 3, 5 的限制。
【样例解释 #4】
这个样例满足子任务 2, 3, 4, 5 的限制。
数据范围
本题采用捆绑测试。
对于 100% 的数据,
- 子任务 1(10 分):
。 - 子任务 2(25 分):
, 。 - 子任务 3(27 分):
。 - 子任务 4(29 分):
。 - 子任务 5(9 分):无特殊限制。
译自 JOI 2022 Final T2 「自習 / Self Study」