C0377 [NOI2011Day2-B]NOI嘉年华

内存限制:256 MB 时间限制:1000 ms

题目描述

NOI2011在吉林大学开始啦!为了迎接来自全国各地最优秀的信息学选手,吉林大学决定举办两场盛大的NOI嘉年华活动,分在两个不同的地点举办。每个嘉年华可能包含很多个活动,而每个活动只能在一个嘉年华中举办。

现在嘉年华活动的组织者小安一共收到了$n$个活动的举办申请,其中第$i$个活动的起始时间为$S_i$,活动的持续时间为$T_i$。这些活动都可以安排到任意一个嘉年华的会场,也可以不安排。

小安通过广泛的调查发现,如果某个时刻,两个嘉年华会场同时有活动在进行(不包括活动的开始瞬间和结束瞬间),那么有的选手就会纠结于到底去哪个会场,从而变得不开心。所以,为了避免这样不开心的事情发生,小安要求不能有两个活动在两个会场同时进行(同一会场内的活动可以任意进行)。

另外,可以想象,如果某一个嘉年华会场的活动太少,那么这个嘉年华的吸引力就会不足,容易导致场面冷清。所以小安希望通过合理的安排,使得活动相对较少的嘉年华的活动数量最大。

此外,有一些活动非常有意义,小安希望能举办,他希望知道,如果第$i$个活动必须举办(可以安排在两场嘉年华中的任何一个),活动相对较少的嘉年华的活动数量的最大值。

输入格式

输入的第一行包含一个整数$n$,表示申请的活动个数。

接下来$n$行描述所有活动,其中第$i$行包含两个整数$S_i、T_i$,表示第$i$个活动从时刻$S_i$开始,持续$T_i$的时间。

输出

输出的第一行包含一个整数,表示在没有任何限制的情况下,活动较少的嘉年华的活动数的最大值。

接下来$n$行每行一个整数,其中第i行的整数表示在必须选择第i个活动的前提下,活动较少的嘉年华的活动数的最大值。

样例

样例输入 1

5 8 2 1 5 5 3 3 2 5 3

样例输出 1

2 2 1 2 2 2

提示

【样例说明】

在没有任何限制的情况下,最优安排可以在一个嘉年华安排活动1, 4,而在另一个嘉年华安排活动3, 5,活动2不安排。

【数据规模与约定】

所有测试数据的范围和特点如下表所示

屏幕快照 2019-06-06 上午11.20.03.png

【评分标准】(comet 暂不支持部分分)

对于一个测试点:

  • 如果输出格式不正确(比如输出不足$n+1$行),得0分;
  • 如果输出文件第一行不正确,而且后$n$行至少有一行不正确,得0分;
  • 如果输出文件第一行正确,但后$n$行至少有一行不正确,得4分;
  • 如果输出文件第一行不正确,但后$n$行均正确,得6分;
  • 如果输出文件中的$n+1$行均正确,得10分。