Coding is the closest thing we have to superpower !
描述
今年高考后,老师在班上做了一个关于学生成绩的调查。这个班有n个学生,从1到n进行编号。学生们不想告诉老师他们的确切分数,只告诉老师他们在省里的排名。
老师问了所有的学生之后,发现有些学生没有说实话。例如,学生1说他在5004到5005之间,学生2说他在5005到5006之间,学生3说他在5004到5006之间,学生4说他也在5004到5006之间。这种情况显然是不可能的。所以至少有一个人说了谎。
因为老师认为他的学生大多数是诚实的,他想知道最多可能有多少学生说真话。
输入
第一行一个整数n(1 \le n \le 60)。
接下来n行,每行两个整数,X_i, Y_i (1 \le X_i \le Y_i \le 10^5),表示第i个学生排名在X_i和Y_i之间。
输出
第一行输出最多可能有多少学生说真话。
第二行从小到大输出说真话学生的编号,如果有多解,输出字典序最大的解。
样例
输入
4 5004 5005 5005 5006 5004 5006 5004 5006
输出
3 2 3 4
输入
7 4 5 2 3 1 2 2 2 4 4 2 3 3 4
输出
5 1 3 5 6 7
标签