Codeforces Round #436 (Div. 2) D. Make a Permutation!(优先队列)
来源:互联网 发布:禁止域名转出万网 编辑:程序博客网 时间:2024/06/08 00:13
优先队列随便搞搞就过了。
出现一次的直接输出。没出现的数字放在优先队列里,当判断到出现多次的数字时,和优先队列的队首比较一下,选择较小的输出。
#include <bits/stdc++.h>using namespace std;const int MAXN = 200100;int mark[MAXN];int num[MAXN];int main(){ int n; scanf("%d",&n); for(int i = 1; i <= n; ++i) { scanf("%d",&num[i]); mark[num[i]]++; } priority_queue<int,vector<int>,greater<int>> que; for(int i = 1; i <= n; ++i) { if(!mark[i]) que.push(i); } printf("%d\n",que.size()); for(int i = 1; i <= n; ++i) { if(mark[num[i]] == 1) { printf("%d ",num[i]); } else if(mark[num[i]] > 1) { if(num[i] < que.top()) { printf("%d ",num[i]); mark[num[i]] = 0; } else { mark[num[i]]--; printf("%d ",que.top()); que.pop(); } } else { printf("%d ",que.top()); que.pop(); } } return 0;}
阅读全文
0 0
- Codeforces Round #436 (Div. 2) D. Make a Permutation!(优先队列)
- Codeforces Round #436 (Div. 2)D. Make a Permutation! codeforces-864D. Make a Permutation!
- D. Make a Permutation! (Codeforces Round #436 (Div. 2))
- Codeforces Round #436 (Div. 2) D. Make a Permutation!
- Codeforces Round #436 (Div. 2)-贪心-D. Make a Permutation!
- Codeforces Round #436 (Div. 2) 864D.Make a Permutation!
- Codeforces Round #436 (Div. 2) D. Make a Permutation!
- Codeforces Round #436 (Div. 2) D. Make a Permutation!
- Codeforces Round #436 (Div. 2) D. Make a Permutation! 思维+贪心
- Codeforces Round #436 (Div. 2) Make a Permutation!
- Codeforces Round #436 (Div. 2) Make a Permutation!
- Codeforces Round #436 (Div. 2) A.Fair Game B.Polycarp and Letters C. Bus D.Make a Permutation!
- Codeforces Round #436 D.Make a Permutation!(贪心)
- Codeforces Round #390 (Div. 2)(A,B,C(记忆化搜索),D(贪心,优先队列))
- Codeforces Round #303 (Div. 2)-D. Queue(优先队列)
- Codeforces Round #350 (Div. 2)(D)优先队列
- Codeforces Round #374 (Div. 2) D 贪心+优先队列
- Codeforces Round #433Div. 2 D Jury Meeting 优先队列
- 菜鸟前端日记1(HTML+CSS )
- pip3~pip下载慢
- HashMap和HashTable的区别
- loadrunner Web_类函数之web_revert_auto_header()
- mysql常用基础命令以及例子
- Codeforces Round #436 (Div. 2) D. Make a Permutation!(优先队列)
- 关于java导出为war包
- LeetCode题目:23. Merge k Sorted Lists
- Java——初始化块,初始化块与构造方法,静态初始化块
- WebGL三角形平移变换
- django基础入门(4)-后台管理
- <PTA>一元多项式的求和和乘积运算解题报告
- LeetCode编程练习
- 关于<a></a>标签里嵌套<a></a>标签的bug