Distinct Values

PS:思路巨明显,就是代码写不出,总想着一次更新一条线段。这里用一个set,存的是当前能用的数的。怎么去更新set,记录上一个区间的左右端点 l , r ,然后类似于莫队的写法。。。。看代码吧。注意上一个区间和当前区间没有公共端点时要特判!!!,也就是代码中的 if 语句 。

#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
#include<bitset>
#include<vector>
#include<set>
#define ll long long
#define P pair<int, int>
#define PP pair<int,pair<int, int>>
#define pb push_back
#define pp pop_back
#define lson root << 1
#define INF (int)2e9 + 7
#define rson root << 1 | 1
#define LINF (unsigned long long int)1e18
#define mem(arry, in) memset(arry, in, sizeof(arry))
using namespace std;const int maxn = 100005;int T, n, m, res[maxn];
P p[maxn];int main()
{cin >> T;while(T--) {mem(res, 0);scanf("%d %d", &n, &m);for(int i = 1; i <= m; i++) scanf("%d %d", &p[i].first, &p[i].second);sort(p + 1, p + m + 1);set<int> unused;for(int i = 1; i <= n; i++) unused.insert(i);int l = p[1].first, r = p[1].second;int t = 0;for(int i = l; i <= r; i++) {res[i] = ++t;unused.erase(t);}for(int i = 2; i <= m; i++) {int tl = p[i].first;int tr = p[i].second;if(tr <= r) continue;while(l < tl) {if(res[l]) unused.insert(res[l]);l++;}while(r < tr) {++r;if(r >= tl) {res[r] = *unused.begin();unused.erase(res[r]);}}}for(int i = 1; i <= n; i++) printf("%d%c", (res[i] == 0 ? 1 : res[i]), (i == n ? '\n' : ' '));}return 0;
}

转载于:https://www.cnblogs.com/zgglj-com/p/9363166.html

2018第一场多校 -补题相关推荐

  1. 中国石油大学 2018-2019赛季多校联合新生训练赛第一场 题解与补题

    这场比赛是在18年12月,因为当时完全不敢用C++,感觉很遥远的样子-代码都是拿C实现的,许多地方其实也可以优化的. 问题 A: 录取分数线 时间限制: 1 Sec 内存限制: 128 MB 题目描述 ...

  2. 2018-2019赛季多校联合新生训练赛第一场题解和补题(中石油)

    做这个题用了没多长时间就a了四道题,然后觉得我可以做出更多的时候突然发现别的都不太会了..到最后才拿到一个铜牌后来听说这些 都是2011年慈溪的小学奥赛题,瞬间心态崩了...这都大学了做小学题都这么费 ...

  3. 2021杭电多校补题——第一场

    2021杭电多校补题--第一场 文章目录 Mod, Or and Everything Rocket land(待补) Puzzle loop(待补) Another thief in a Shop( ...

  4. 参加第一场多校大一训练赛后的感想

    参加第一场多校大一训练赛后的感想 凡事复杂的时候,出去轧马路还是不错的,"乱我心者今日之事多烦忧".不说去他的了,谈下昨天的比赛吧. 有那么一句话,怎么说的呢,"今天不走 ...

  5. oracle两个时间段空档补齐,《甲骨文合集补编》第一册释文校补

    <甲骨文合集补编>第一册释文校补 刘海琴 [摘要]<甲骨文合集补编>自出版以来,学者们在受益的同时也发现了其中的诸多问题.沈培.沈建华.蔡哲茂.谢济等先生都曾作专文讨论过其中的 ...

  6. 2019HDU多校补题

    心得:做不出,补不动 HUD第一场: 1001 Blank Y 1002 Operation Y 1003 Milk 1004 Vication Y 1005 Path Y 1006 Typewrit ...

  7. 2019暑期多校补题情况 hdu

    hdu: Ο 以补 .   未补 题号 A B C D E F G H I J K L 状态 . Ο . Ο Ο . . . . . . . 第一场: 现场: 1004:思路 1005:板子最短路+最 ...

  8. 2019暑期多校补题情况 牛客

    牛客 Ο . 第一场: 第二场: 第三场: 现场 B:队友找的模板,待补 F:思维--数据也是锅...写个假算法二分过了,其实应该是尺取吧 H:思维--spj错了  队友随便把我的玄学改动,就过了.. ...

  9. 2020 多校补题情况

    牛客: 第一场:  只剩CG 未补  (两道论文题,现场过的人不到4个,没必要补) 第二场:已经全部补完.upd:9.7 第三场:ABCEFGL 第四场:BFH 第五场:BDEFI 第六场:BCEGH ...

最新文章

  1. 窗体皮肤ssk 跟背景图片冲突_夫西地酸+阿达帕林~我要好皮肤
  2. Mybatis传入参数map,读取map原创
  3. 读源码,对开发者重要吗?
  4. java并发编程实战阅读总结(b)
  5. ctf 改变图片高度_每天一分钟,python一点通(opencv的图片处理方法)
  6. Django:静态文件staticfiles
  7. spingMVC 请求参数绑定
  8. 【扯皮】李诞 ▪《笑场》
  9. 基于visual Studio2013解决C语言竞赛题之0203格式化输出
  10. tensorflow 计算梯度: tf.gradient() 与 tf.GradientTape()
  11. JVM内存模型和结构
  12. PS Raw增效工具:Camera Raw 15 Mac
  13. Synch4j使用指南
  14. HDOJ 4747 Mex
  15. 得分(Score,ACM/ICPC Seoul 2005,UVa1585)
  16. Xcode插件所在的目录:~/Library/Application Support/Developer/Shared/Xcode/Plug-ins
  17. c语言程序设计猪八戒吃西瓜,三年级语文下册教案——《猪八戒吃西瓜》教学设计之二...
  18. 加州大学河滨分校计算机科学专业,美国加州大学河滨分校计算机科学硕士专业申请.pdf...
  19. 解决CentOS初装后ifconfig命令无法使用
  20. matlab和creo仿真,一种基于Creo和Matlab的复杂空间焊缝曲线的重构方法与流程

热门文章

  1. 【开源】简单4步搞定QQ登录,无需什么代码功底【无语言界限】
  2. kafka相关知识点总结
  3. C# Excel导入、导出
  4. MBG配置详解及最佳实践
  5. 典型排序算法(C语言实现)
  6. c# RegistryKey 的相关简单操作
  7. 云计算:技术疲劳玩概念 伪云项目横行于世
  8. colorkey唇釉是否安全_Colorkey 空气唇釉真的那么好用吗?
  9. 3-7Tensor的算术运算
  10. 确定计算机配置方案的原则,确定计算机配置方案的原则