Lại là kiểm tra phạm vi


Submit solution


Points: 4
Time limit: 1.5s
Memory limit: 256M

Author:
Problem type
Allowed languages
Ada, Assembly, Awk, C, C++, C11, CLANG, CLANGX, Classical, COBOL, Coffee, CSC, D lang, DART, F95, FORTH, Fortrn, GAS32, GO, Haskell, Itercal, Java, kotlin, LEAN, LISP, LUA, MONOVB, Nasm, OCAML, Pascal, Perl, php, PIKE, prolog, Pypy, Python, Ruby 2, RUST, Scala, SCM, SED, SWIFT, TCL, TUR, V8JS, VB, ZIG

Cho \(n\) phạm vi, nhiệm vụ của bạn là xác định cho mỗi phạm vi xem chứa bao nhiêu phạm vi khác và được chứa bởi bao nhiêu phạm vi khác.

Khoảng \([a, b]\) được cho là chứa khoảng \([c, d]\) nếu \(a \le c\) và \(d \le b\).

Đầu vào

Dòng đầu tiên chứa số nguyên \(n\), số phạm vi.

Tiếp theo, có \(n\) dòng mô tả các phạm vi. Mỗi dòng ghi hai số nguyên \(x\) và \(y\) cho phạm vi \([x,y]\).

Bạn có thể cho rằng không có phạm vi nào xuất hiện nhiều lần trong đầu vào.

Đầu ra

Đầu tiên, in một dòng mô tả cho từng phạm vi (theo thứ tự đầu vào) xem nó chứa bao nhiêu phạm vi khác.

Sau đó, in một dòng mô tả cho từng phạm vi (theo thứ tự đầu vào) xem có bao nhiêu phạm vi khác chứa nó.

Giới hạn

\(1 \le n \le 2*10^5\)

\(1 \le x < y \le 10^9\)

Ví dụ

Đầu vào:

4
1 6
2 4
4 8
3 6

Đầu ra:

2 0 0 0
0 1 0 1

Comments

There are no comments at the moment.