L1-088 静静的推荐

分数 20

全屏浏览题目

切换布局

作者 陈越

单位 浙江大学

天梯赛结束后,某企业的人力资源部希望组委会能推荐一批优秀的学生,这个整理推荐名单的任务就由静静姐负责。企业接受推荐的流程是这样的:

  • 只考虑得分不低于 175 分的学生;
  • 一共接受 K 批次的推荐名单;
  • 同一批推荐名单上的学生的成绩原则上应严格递增;
  • 如果有的学生天梯赛成绩虽然与前一个人相同,但其参加过 PAT 考试,且成绩达到了该企业的面试分数线,则也可以接受。

给定全体参赛学生的成绩和他们的 PAT 考试成绩,请你帮静静姐算一算,她最多能向企业推荐多少学生?

输入格式:

输入第一行给出 3 个正整数:N(≤105)为参赛学生人数,K(≤5×103)为企业接受的推荐批次,S(≤100)为该企业的 PAT 面试分数线。

随后 N 行,每行给出两个分数,依次为一位学生的天梯赛分数(最高分 290)和 PAT 分数(最高分 100)。

输出格式:

在一行中输出静静姐最多能向企业推荐的学生人数。

输入样例:

10 2 90
203 0
169 91
175 88
175 0
175 90
189 0
189 0
189 95
189 89
256 100

输出样例:

8

样例解释:

第一批可以选择 175、189、203、256 这四个分数的学生各一名,此外 175 分 PAT 分数达到 90 分的学生和 189 分 PAT 分数达到 95 分的学生可以额外进入名单。第二批就只剩下 175、189 两个分数的学生各一名可以进入名单了。最终一共 8 人进入推荐名单。

最主要的是这两条规则

  • 同一批推荐名单上的学生的成绩原则上应严格递增;
  • 如果有的学生天梯赛成绩虽然与前一个人相同,但其参加过 PAT 考试,且成绩达到了该企业的面试分数线,则也可以接受。

最重要的是把这个题的题意理解清楚之后,把这个题的本质搞明白,那这个题就不复杂了。

现在的情况就是,利用最后一条规则,在每批名单中,尽可能地多推荐学生,根本上每批只能多推荐一个学生,此学生得分大于等于175,且PAT成绩不合格的,将他放在他的分数的那一列的第一个,后续可以跟随无数个分数和他一样,且PAT成绩合格的,这样就可以达到每次推荐学生的时候多推荐一个,且只能多推荐一个。

因为推荐批次K是一个正整数,则一定大于等于1,所以其实在第一次推荐时,就可以利用最后一条规则,把所有得分合格且PAT合格的学生都推荐上去,而推荐K次,就最多有K个得分合格且PAT不合格的学生被推荐上去。

AC代码

#include<iostream>
using namespace std;struct P
{int score;int pat;
};int main()
{int n,k,s;cin>>n>>k>>s;  //人数,推荐批次,pat面试分数线。int arr[300] = {0};int show = 0;while(n--){P p;cin >> p.score >> p.pat;if(p.score>=175&&p.pat>=s)++show;else if(p.score>=175&&p.pat<s)arr[p.score]++;}for(int i = 290; i >= 175; --i){if(arr[i]>=k)show+=k;elseshow+=arr[i];}cout<<show;return 0;
}

其实大多时候还是要看对题题意的理解程度的,像上面这个题,如果没有把尽可能多推荐学生的方法的本质弄清楚,就很难搞了,最开始有过排序的念头,得分正序,PAT倒序排,可是排完之后仍不好处理。所以,多思考思考。

GPLT团体程序设计天梯赛 L1-088 静静的推荐相关推荐

  1. 2022年团体程序设计天梯赛-总决赛 L1-8 静静的推荐

    L1-8 静静的推荐 天梯赛结束后,某企业的人力资源部希望组委会能推荐一批优秀的学生,这个整理推荐名单的任务就由静静姐负责.企业接受推荐的流程是这样的: 只考虑得分不低于 175 分的学生: 一共接受 ...

  2. 2020年团体程序设计天梯赛L1题目集(题目+代码)

    2020年11月团体程序设计天梯赛 第一次参加天梯赛,除了在门口冻得瑟瑟发抖,还有按不动的shift之外一切都还好- tip:不知道啥原因代码上基本没有注释,希望dalao们不要介意~ L1-1 嫑废 ...

  3. 【Java】2022年团体程序设计天梯赛 L1 和 L2-042 题解

    今天我要赢 2018 年我们曾经出过一题,是输出"2018 我们要赢".今年是 2022 年,你要输出的句子变成了"我要赢!就在今天!"然后以比赛当天的日期落款 ...

  4. 第六届GPLT团体程序设计天梯赛

    文章目录 一.L1基础级 1.人与神 (5 分) 2.两小时学完C语言 (5 分) 3.强迫症 (10 分) 4.降价提醒机器人 (10 分) 5.大笨钟的心情 (15 分) 6.吉老师的回归 (15 ...

  5. python 团体程序设计天梯赛L1合集(持续更新)

    试题列表 L1-001 Hello World L1-002 打印沙漏 L1-003 个位数统计 L1-004 计算摄氏温度 L1-005 考试座位号 L1-006 连续因子 L1-007 念数字 L ...

  6. 【PTA~21年GPLT团体程序天梯赛-L1题】

    文章目录 L1-01 人与神~5 题解 L1-02 两小时学完C语言~5 题解 L1-03 强迫症~10 题解 L1-04 降价提醒机器人~10 题解 L1-05 大笨钟的心情~15 题解 L1-06 ...

  7. 团体程序设计天梯赛-L1练习集

    目录 L1-002 打印沙漏 (20 分) 输入格式: 输出格式: 输入样例: 输出样例: L1-006 连续因子 (20 分) 输入格式: 输出格式: 输入样例: 输出样例: L1-009 N个数求 ...

  8. 第六届团体程序设计天梯赛L1题目总结

    一.编码技巧总结 1.C/C++万能头文件 #include <bits/stdc++.h> using namespace std; 2.int型数据上限:2*10^9  3.读小数能用 ...

  9. 2021第六届GPLT 团体程序设计天梯赛CCCC 个人题解

    目录 L1-1 人与神 Code L1-2 两小时学完C语言 Code L1-3 强迫症 思路 Code L1-4 降价提醒机器人 Code L1-5 大笨钟的心情 思路 Code L1-6 吉老师的 ...

最新文章

  1. Objective-c的@property 详解
  2. 计算机网络原理课程描述,计算机网络原理
  3. 通过自定义注解与aop统一存储操作记录
  4. Tree HDU - 6547 (树链剖分,线段树)
  5. 【HNOI2004】L语言
  6. 阿里面试官常问的TCP和UDP,你真的弄懂了吗?
  7. Kaldi AMI数据集脚本学习1----cmd.sh和path.sh
  8. flash位图技术研究篇(3):移动缓冲区域
  9. 58同城溢价私有化,互联网“前浪”躲不过“七年之痒”?
  10. visual studio 2017 installer 安装包制作过程出现的问题---无法注册模块 HRESULT -2147024769 请与您的技术支持人员联系...
  11. OpenCV4,5个方法让你从小白到大佬
  12. python常用代码
  13. .mpp文件的使用技巧
  14. 常熟理工php实验三_三位教师获评常熟理工学院首届科研支撑教学奖
  15. 使用毫秒单位来进行计算程序执行时间
  16. 程序员如何摆脱天天CRUD这种打杂状态?
  17. Apache DolphinScheduler征稿 — 小Demo轻松入门DolphinSchedule大数据调度工具
  18. 谷歌浏览器 无法翻译此网页问题(已解决,亲测有效
  19. 【杂谈】想成为机器学习学霸?先学会做笔记吧(Evernote,BoostNote,Leanote等)
  20. hbuilderx安装教程_HBuilderX安装使用教程

热门文章

  1. FTX创办人SBF:区块链并不是炒作,有三大应用场景可大放异彩
  2. 聊聊信任:衣服掉地上会脏的
  3. spring中的JdbcTemplate的使用方法
  4. Redist 6.2 zset的写入(源码),最后介绍一下skiplist的结构
  5. brand.php dnfire.cn_火灾报警系统品牌
  6. idea安装plantuml插件画流程图
  7. Differentially Private Deep Learning with Iterative Gradient Descent Optimization
  8. 首款产后抑郁药问世;京东推出城市操作系统;阿里将推出全新销售平台;香港政府砸5300亿填海;脸书再爆隐私丑闻;这就是今天的大新闻...
  9. vue解决-4048报错
  10. 数据科学库(HM)DAY 2