3073 - [Pa2011]Journeys

Seter 建造了一个很大的星球,他准备建造 N 个国家和无数双向道路。N 个国家很快建造好了,用 1 \cdot N编号,但是他发现道路实在太多了,他要一条条建简直是不可能的!于是他以如下方式建造道路:(a,b),(c,d) 表示,对于任意两个国家 x,y,如果a \le x \le b,c\le y \le d,那么在 x,y 之间建造一条道路。

Seter 保证一条道路不会修建两次,也保证不会有一个国家与自己之间有道路。

Seter 好不容易建好了所有道路,他现在在位于 P 号的首都。Seter 想知道 P 号国家到任意一个国家最少需要经过几条道路。当然,Seter 保证 P 号国家能到任意一个国家。

注意:可能有重边

输入

第一行三个数 N,M,PN\le 500000,M\le 100000

后M行,每行4个数 A,B,C,D1\le A\le B\le N,1\le C\le D\le N

输出

N 行,第 i 行表示 P 号国家到第 i 个国家最少需要经过几条路。显然第 P 行应该是 0

样例

输入

5 3 4
1 2 4 5
5 5 4 4
1 1 3 3

输出

1
1
2
0
1
时间限制 3 秒
内存限制 512 MB
讨论 统计
上一题 下一题