题目传送门
一、题目解析
由于中国庞大的人口和站台,总是出现票的问题,现在政府需要你去开发一个新的查票系统。
一个火车只能载\(k\)个乘客,并且每个乘客仅仅只能从\(a->b\)买一张票,在任何时间每辆火车载客不超过\(k\)人,一个人提前买的票将是有效的。
输入:
多组测试数据,第一行测试组数,接下来每组的第一行,为\(k\)(列车的承载人数),\(Q\)(几组数据);接下来\(Q\)行,每行有两个数字\(a\)和\(b\)
输出:
每组测试数据输出三行,第一行测试组数,如果第\(i\)次查询满足题意输出从\(1\)到\(i\),每个数字有一个空格,每组测试后有一个空行
解释样例:
\(1-> 6\) 已经占了两个座位,\(3->4\)在\(3\)站台可以上车,\(1->5\)由于\(3->4\)经过的站与其有重复并且\(3->4\)先买的票,所以\(1->5\)不满足条件,\(1->2\)由于之前只有两个\(1->6\)经过\(1->2\)站,所以刚好可以坐上车,\(2->4\)与\(1->5\)同理,因为与\(3->4\)有重复。所以第\(1,2,3,5\)个乘客满足条件。
二、经验总结
- 区间维护最大值、最小值,如果整个区间加了一个值\(v\),其实最大值、最小值也是加了一个\(v\)
- https://www.bilibili.com/video/BV1Tk4y1m7VM?p=6 讲解了这部分的知识
三、实现代码
//#include
#include
#include
#include
#include
#include