CF730G Car Repair Shop
题目描述
Polycarp 开始创业了,明天他将开始汽车修理。目前,汽车修理厂非常小,不能同时修理多辆汽车。
Polycarp 已经从客户那里收集了 $n$ 个请求。请求编号从 $1$ 到 $n$。
第 $i$ 个请求包含两个值:$s_i$ 为客户希望开始维修其汽车的日期,$d_i$ 为维修汽车所需天数。天数从 $1$ 开始计算,第一天是明天,第二天是后天,依此类推。
Polycarp 从 $1$ 到 $n$ 依次考虑每个请求,对于第 $i$ 个请求:
- 如果 $\left[s_i,s_i+d_i-1\right]$ 这些天修理厂是闲置的,那么 $\left[s_i,s_i+d_i-1\right]$ 这些天就用来修理第 $i$ 个客户的车子
- 否则就找到最小的一个 $x$,满足 $\left[x,x+d_i-1\right]$ 这些天工厂是闲置的,然后把 $\left[x,x+d_i-1\right]$ 这些天用来修理第 $i$ 个客户的车子
给出 $n$ 个请求,请求出每个客户的车子是在那些天被修理的。
输入格式
第一行一个整数 $n$。
接下来 $n$ 行,每行两个正整数,即 $s_i$ 和 $d_i$。
你应该按输入的顺序依次处理每一组询问。
输出格式
输出 $n$ 行,每行两个正整数,分别表示第 $i$ 个客户的汽车开始修理的日期和结束修理的日期。