南阳757--期末考试

期末考试

时间限制:1000 ms  |  内存限制:65535 KB

难度:2

描述

马上就要考试了,小T有许多作业要做,而且每个老师都给出来了作业要交的期限,如果在规定的期限内没

交作业就会扣期末成绩的分数,假设完成每门功课需要一天的时间,你能帮助小T扣除的分数最小吗?

输入
输入n,表示n门功课(n<2000),接下来n行,每行两个数a,b,分别表示交作业的最后期限,迟交扣除的分数。
(以文件结尾)
输出
输出扣除的最小分数。
样例输入
3
3 10
3 5
3 1
3
1 6
3 2
1 3
7
1 3
4 2
6 1
4 7
2 6
4 5
3 4
样例输出
0
3
5
上传者
TC_常红立
//先用sort()排一下序, 然后把元素存储在对头为最小元素的一个数组(优先队列)中,比较更新队中元素,每次取最小分数相加 → → 结果;

 1 #include <queue>
 2 #include <cstdio>
 3 #include <algorithm>
 4 using namespace std;
 5
 6 struct deliver
 7 {
 8     int ld, fs;
 9 } num[2020];
10
11 bool cmp(deliver ld,deliver fs)
12 {
13     if(ld.ld == fs.ld)
14     return ld.fs < fs.fs;
15     else
16     return ld.ld < fs.ld;
17 }
18
19 int main()
20 {
21     int i, n;
22     while(~scanf("%d", &n))
23     {
24         priority_queue <int, vector<int>, greater<int> > q;
25         for(i=0; i<n; i++)
26         scanf("%d %d", &num[i].ld, &num[i].fs);
27         sort(num, num+n, cmp);
28         int sum = 0;
29         for(i=0; i<n; i++)
30         {
31             if(q.size() < num[i].ld) q.push(num[i].fs);
32             else
33             {
34                 if(q.top() < num[i].fs)
35                 {
36                     sum += q.top();
37                     q.pop();
38                     q.push(num[i].fs);
39                 }
40                 else
41                 sum += num[i].fs;
42             }
43         }
44         printf("%d\n", sum);
45     }
46     return 0;
47 }

时间: 2024-10-13 01:37:51

南阳757--期末考试的相关文章

nyoj 757 期末考试【优先队列+贪心】

期末考试 时间限制:1000 ms  |  内存限制:65535 KB 难度:2 描述 马上就要考试了,小T有许多作业要做,而且每个老师都给出来了作业要交的期限,如果在规定的期限内没 交作业就会扣期末成绩的分数,假设完成每门功课需要一天的时间,你能帮助小T扣除的分数最小吗? 输入 输入n,表示n门功课(n<2000),接下来n行,每行两个数a,b,分别表示交作业的最后期限,迟交扣除的分数.(以文件结尾) 输出 输出扣除的最小分数. 样例输入 3 3 10 3 5 3 1 3 1 6 3 2 1

南阳oj 757 期末考试【优先队列+sort排序】

描述 马上就要考试了,小T有许多作业要做,而且每个老师都给出来了作业要交的期限,如果在规定的期限内没 交作业就会扣期末成绩的分数,假设完成每门功课需要一天的时间,你能帮助小T扣除的分数最小吗? 输入 输入n,表示n门功课(n<2000),接下来n行,每行两个数a,b,分别表示交作业的最后期限,迟交扣除的分数. (以文件结尾) 输出 输出扣除的最小分数. 样例输入 3 3 10 3 5 3 1 3 1 6 3 2 1 3 7 1 3 4 2 6 1 4 7 2 6 4 5 3 4 样例输出 0 3

nyoj757 期末考试 (优先队列)

题目757 题目信息 运行结果 本题排行 讨论区 期末考试 时间限制:1000 ms  |  内存限制:65535 KB 难度:2 描述 马上就要考试了,小T有许多作业要做,而且每个老师都给出来了作业要交的期限,如果在规定的期限内没 交作业就会扣期末成绩的分数,假设完成每门功课需要一天的时间,你能帮助小T扣除的分数最小吗? 输入 输入n,表示n门功课(n<2000),接下来n行,每行两个数a,b,分别表示交作业的最后期限,迟交扣除的分数. (以文件结尾) 输出 输出扣除的最小分数. 样例输入 3

高等代数期末考试

高等代数的最后一站,有惊无险. 高等代数期末考试试题

数据库期末考试复习题 第一章

作者 : Dolphin 原文地址:http://blog.csdn.net/qingdujun/article/details/27820507 一.单项选择题: 1. 位于用户和操作系统之间的一层数据管理软件是  C    . A.DBS  B.DB  C.DBMS  D.MIS 2. 数据库系统中的数据模型通常由    A     三部分组成. A.数据结构.数据操作和完整性约束 B.数据定义.数据操作和安全性约束 C.数据结构.数据管理和数据保护 D.数据定义.数据管理和运行控制 3. 

复旦大学2016--2017学年第二学期(16级)高等代数II期末考试第七大题解答

七.(本题10分)  设 $n$ 阶复方阵 $A$ 的特征多项式为 $f(\lambda)$, 复系数多项式 $g(\lambda)$ 满足 $(f(\lambda),g'(\lambda))=1$. 证明: $A$ 可对角化的充要条件是 $g(A)$ 可对角化. 证明  先证必要性. 设 $A$ 可对角化, 即存在非异阵 $P$, 使得 $P^{-1}AP=\Lambda=\mathrm{diag}\{\lambda_1,\lambda_2,\cdots,\lambda_n\}$ 为对角阵,

中国MOOC_面向对象程序设计——Java语言_期末考试编程题_1细胞自动机

期末考试编程题 返回 这是期末考试的编程题 温馨提示: 1.本次考试属于Online Judge题目,提交后由系统即时判分. 2.学生可以在考试截止时间之前提交答案,系统将取其中的最高分作为最终成绩. 1 细胞自动机(30分) 题目内容: 这是细胞自动机的非图形版本.细胞自动机是指在一个二维网格内,每一个网格是一个细胞.每个细胞有活和死两种状态. 初始时刻,有些细胞是活的,有些细胞是死的.自动机的每一步,根据每个细胞周围8个格子内的其他细胞的生存情况决定这个细胞下一步是否存活.具体的规则如下:

codevs 2915 期末考试

时间限制: 1 s 空间限制: 16000 KB 题目等级 : 黄金 Gold 题目描述 Description 期末考试要来了,某同学正在努力复习. 他要复习N个知识点,每个知识点需要一定的知识做基础. 现给你一个AOV网,其中有M条边<Ai,Bi>. 问他能考得怎样?(假设他只要复习了就不会出错,没复习就什么也不会) 输入描述 Input Description 两个正整数N,M M行,Ai  Bi. 输出描述 Output Description 若能考满分,输出Oh,yeah! 若能及

Linux系统管理期末考试小结

这学期主要讲Linux系统管理,内容分为六章:了解并安装Linux系统,文件和目录管理,用户.组和权限管理,磁盘与文件系统管理,系统软件包管理,系统进程和服务管理.期末考试要求每个学生在自己的笔记本电脑里新建虚拟机,安装rhel6系统,并设为桥接模式,然后按照考题要求进行实践操作.最后评分时,我编写了一个可以自动评分的脚本,并将脚本程序在我电脑的Linux虚拟机里设为NFS共享,然后依次在每个学生的虚拟机通过NFS共享,复制脚本到本地进行评分.试题和脚本我已在附件里共享,有兴趣的朋友可以下载练习

复旦大学2015--2016学年第二学期高等代数II期末考试情况分析

一.期末考试成绩班级前几名 胡晓波(90).杨彦婷(88).宋卓卿(85).唐指朝(84).陈建兵(83).宋沛颖(82).王昊越(81).白睿(80).韩沅伯(80).王艺楷(80).张漠林(80).张子涵(80) 二.总成绩计算方法 平时成绩根据交作业的次数决定,本学期共交作业12次,10次以上(包括10次)100分,少一次扣10分. 总成绩=平时成绩*20%+期中考试成绩*20%+期末考试成绩*60% 三.最终成绩及人数 最终成绩 人数 A 26 A- 1 B+ 14 B 16 B- 20