CF417B Crash

题目描述

在“俄罗斯代码杯”编程比赛的期间,代码测试系统储存了每一位参赛者发送的所有程序,有很多参赛者会在他们自己的代码程序中使用随机数,并发送几个具有相同的的程序。 每个参赛者由一个唯一的正整数 $k$ 来标识,每个发送的程序 $A$ 都由两个数字表示:$x$,在与 $A$ 相同的第一个程序之前发送的不同的程序的数量;$k$,参赛者的编号,即程序的作者。因此,所有相同的程序具有相同的 $x$。 众所周知,测试系统中的数据是按照时间顺序来存储的,就是说,如果测试系统有一个数字为 $x$($x \ge 0$)的程序,而参赛者的编号为 $k$,那么测试系统有一个编号为 $x - 1$ 的程序存储在以前的某个地方。 比赛期间,测试系统崩溃了,但随后所有的参赛者提交的数据都已经恢复了。现在的陪审团想核实恢复的数据是否按照时间顺序储存, 请你帮助陪审团这样做。

输入格式

第一行一个整数 $n$ $(1 \le n \le 10^{5})$,以下 $n$ 行分别是两个整数 $x$ $(0 \le x \le 10^{5})$ 和 $k$ $(1 \le k \le 10^{5})$。 它们分别表示: - $x$,在与 $A$ 相同的第一个程序之前发送的不同程序的数量。 - $k$,参赛者的编号,即程序的作者。

输出格式

如果数据是按照顺序输入的, 则输出 `YES`; 反之, 输出 `NO` 。