洛谷 P5886 Hello, 2020!
P5886 Hello, 2020!
题目背景
时针与分针重合在「零」的那一霎那,嘀嗒声便宣告了新一年的到来。
在过去的一年里,世事无常。屏幕面前的你可能不久前才听闻「OI」,也可能暂时地结束了竞赛生涯;可能在赛场上叱咤风云名列榜首,也可能独自承受着比赛失利的落寞。
无论如何,过去仍旧是过去,将来依然是将来。
以此题为开端,迎接你的 2020 吧!
题目描述
本场比赛有 n名出题人,m名选手。
出题人从 1至 n依次标号,选手从 1至 m依次标号。
比赛结束后选手的最终排名为 1至 m中其一,且互不相同。
报名结束后,第 i位出题人看了看报名列表,对其他出题人说:「我觉得只有这 k i位选手有可能最终排名第一,他们分别a_{i,1},a_{i,2},a_{i,k_i}。其他人不可能最终排名第一。你面前屏幕上的这道题的出题人通过时空隧道,预先得知了谁是最终排名第一的选手。
出题人把这 n位出题人的预测都告诉了你,还告诉你恰好只有 p个出题人的预测是正确的。
请你求出哪些选手可能最终获得第一名,并以从小到大的顺序依次输出这些选手的编号。
输入格式
从标准输入中读取数据。
第一行,三个正整数 n,m,p,表示出题人数,选手数,与正确预测数。
接下来 n 行,每行第一个非负整数 k_i
表示第 i 位出题人预测可能最终排名第一的选手位数;接下来 k_i个正整数 a_{i,1},a_{i,2},a_{i,k_i},表示这位出题人预测可能最终排名第一的选手编号。
输出格式
输出数据至标准输出中。
第一行,输出一个非负整数,表示可能最终获得第一名的选手个数。
第二行,以从小到大的顺序依次输出这些选手的编号。
输入输出样例
输入 #1复制
4 3 2
2 2 3
1 1
3 1 2 3
2 1 3
输出 #1复制
1
2
说明/提示
子任务 1(6%):n≤20,m≤20。
子任务 2(30%):n≤100,m≤100,∑k i ≤10^4。
子任务 3(24%):n≤1000,m≤1000。
子任务 4(40%):无特殊限制。
对于全部数据,1≤n≤10^5,1≤m≤10 6,0≤∑k i≤10 6,0≤p≤n。
最初思路:
使用二维bool数组存每位出题人预测可能得第一的哪些选手号数,票数累加,找个数与穿越者说的相同的。
**RunTimeError警告!**会报RTE,因为数据范围过了10^5,而二维数组最多只能开到
10^4.
#include<bits/stdc++.h>
using namespace std;
const int maxn = 1e4+5;
bool a[maxn][maxn];
int sign[maxn];
int main () {int n, m, p;cin >> n >> m >> p;for (int i = 0; i < n; i++) {int num;cin >> num;for (int j = 1; j <= num; j++) {int digit;cin >> digit;a[i][digit] = true;}}int sum = 0, k = 0;for (int i = 1; i <= m; i++) {int num = 0;for (int j = 0; j < n; j++) {if (a[j][i]) num++;}if (num == p) sign[k++] = i, sum++;}cout << sum << "\n";for (int i = 0; i < sum; i++) cout << sign[i] << " ";return 0;
}
思路优化:
实际上,存储这步是多余的,只需要知道最终每位选手有多少票就行了,再和穿越者报的对比。
#include<bits/stdc++.h>
using namespace std;
int box[1000001];
int main () {int n, m, p, num, mark, sum = 0;cin >> n >> m >> p;while(n--) {cin >> num;for (int i = 1; i <= num; i++) {cin >> mark;box[mark]++;}}for(int i = 1; i <= m; i++) if(box[i] == p) sum++;cout << sum << endl;for(int i = 1; i <= m; i++) if(box[i] == p) cout << i << " "; return 0;
}
洛谷 P5886 Hello, 2020!相关推荐
- 【暑期每日一题】洛谷 P5886 Hello, 2020!
题目链接:P5886 Hello, 2020! - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 题目背景 时针与分针重合在「零」的那一霎那,嘀嗒声便宣告了新一年的到来. 在过去的一年 ...
- 崭新的2020(洛谷P5886题题解,Java语言描述)
About~2020 2020,新的起点,一起奋进! 题目要求 P5886题目链接 分析 又是令人无语的题意表述-- 其实理解以后就觉得代码很好写: 题目无非是说,评委给一些人赞赏,我们给这些人计个数 ...
- 洛谷日报索引(2020、2019、2018)
历年洛谷日报索引 2020 2019 2018 感觉洛谷日报全是干货!!!先记下来再说 2020 年洛谷日报索引 3 月 #260[dove]Church 编码(和 Lambda 演算) https: ...
- 洛谷P1101、P1019
洛谷P1101 happy 2020年A的第一道题~(- ̄▽ ̄)- 题目大意:在一个二维字符数组中找到所有的连续'yizhong'的字符(各个方向),然后将其他的地方都用'*'替换掉. 解题思路:最开 ...
- 洛谷日报 2020年3月前索引
2020 2019 2018 感觉洛谷日报全是干货!!!先记下来再说 2020 年洛谷日报索引 3 月 #260[dove]Church 编码(和 Lambda 演算) https://www.luo ...
- 洛谷刷题C语言:陶瓷项链、Cow Gymnastics B、Where Am I? B、Hello, 2020!、SIR 模型
记录洛谷刷题C语言 一.[NOI2000] 瓷片项链 题目描述 原始部落用一种稀有的泥土烧制直径相同的圆瓷片并串成项链,串的时候沿瓷片的直径方向顺次连接,瓷片之间没有空隙也不重叠,一条项链至少由一个瓷 ...
- 2020 CCF非专业级别软件能力认证第一轮(LGR-10)洛谷模拟试题试卷
2020 CCF非专业级别软件能力认证第一轮 (LGR-10)洛谷模拟试题试卷 认证时间:2020年10月8日09:30-11:30 一.单项选择题(共15题,每题2分,共计30分:每题有且仅有一个正 ...
- 洛谷2020、2021、2022 CSP-J1 CSP-S1 第1轮 初赛模拟
1033 - CSP 2020 第一轮(初赛)模拟 试题 - CSP 2020 第一轮(初赛)模拟 - 洛谷有题 [LGR-(-11)]CSP 2020 第一轮(初赛)模拟 - 比赛详情 - 洛谷 U ...
- CSP 2020 S 蒟蒻的游记 (洛谷同步)
我是傻逼,第一次考,太没有经验了 T1: 毒瘤模拟- 我 if + 计算函数 打+调了2小时 ... 样例WA了 心态炸了- T2. 我没学过如何计算并保存一个数的每一个二进制位- 但是,蒟蒻也是个S ...
最新文章
- [转]Apache Commons IO入门教程
- IgniteMe debug 寒假逆向生涯(2/100)
- 把一个一维数组转换为in ()
- JVM类加载机制(ClassLoader)源码解析
- android 杀 服务器,android busybox httpd搭建简单web服务器
- php支持ssi,让Apache支持SHTML(SSI)的配置方法
- 企业即时通讯将成为未来企业竞争致胜的关键
- ubuntu关闭服务需要身份验证
- 销售数据分析这么做,领导不重用你都难
- java socket编程 聊天_基于java的socket简单聊天编程
- 怎样关闭vivo的HTML查看器,vivo安全模式在哪儿关闭?
- 独立游戏如何对接STEAM SDK
- windows server服务器查看操作记录
- 下载 GitHub的代码:git(windows)
- blur事件与click事件的冲突
- Kubernetes之(二十)Helm程序包管理器
- Elastic-job系列(一)-------- 搭建Esjob控制台
- uboot研读笔记 | 05 - 移植uboot 2012.04到JZ2440(支持Nand Flash读写)
- 电信“我的e家”手机无线上网
- 南方科技大学快速建设世界一流超算系统
热门文章
- 纯css实现背景颜色渐变动画
- 装逼神器,用起来真香!网友们直呼 666
- ironpython使用方法_c#(IronPython)调用Python方法
- 【水滴石穿】react-native-video-project
- 勒索软件一次次破防,我们拿什么“守城”?
- 数字验证--断言assert
- mathtype输入latex的花体,如L,I,O等
- 红米ac2100 刷openwrt以及刷回记录
- Jun-Yan Zhu(朱俊彦) - UC Berkeley
- 急救盘linux加pe,教你怎样在PE系统盘里加入卡巴斯基急救盘1.doc