P12302 [ICPC 2023 WF] 时差

题目描述

ICPC World Finals 到了,其中有很多你想参加的活动——演讲、现场展示、趣味活动,更不用说比赛本身了。只有一个问题:你什么时候睡觉? 当你入睡时,你总是会设置一个闹钟,否则你就可能一直睡下去。用了闹钟,你就可以选择睡任意正整数分钟。在睡 $k$ 分钟后,你会再休息 $k$ 分钟(因此你将无法再次入睡);然后你将能够在第三个 $k$ 分钟内正常活动(因此你可以保持清醒,但如果你想睡觉,也可以直接睡)。 你知道 WF 所有活动的时间;你应该计划好自己的睡眠时间,以免错过任何活动的任何部分。就在 WF 开始前(第 $0$ 分钟),你会经过长途旅行抵达酒店房间,需要立即入睡。

输入格式

第一行包含一个正整数 $n$($1\le n\le 200\,000$),表示 WF 中活动的数量。 接下来 $n$ 行,第 $i$ 行包含两个正整数 $b_i$ 和 $e_i$($b_i

输出格式

如果可以规划一个睡眠时间表,使你能够完整地参加所有计划的活动,那么就按下列格式输出一个时间表。否则,输出 `impossible`。 睡眠时间表由第一行输出的睡眠时段数 $p$($1\le p\le 10^6$)和后面的 $p$ 行确定。其中第 $i$ 行包含两个整数 $s_i$ 和 $t_i$,即第 $i$ 个睡眠时段的开始和结束时间,从 WF 开始算起,以分钟为单位。注意不应输出在最后一个活动结束后的睡眠时段。 睡眠时段必须满足 $0=s_1

说明/提示

如遇 SPJ 相关问题,请联系搬题人 @[StayAlone](https://www.luogu.com.cn/user/409236)。