trang chủ / đề bài / nestranges

Kiểm tra Đoạn Lồng nhau

Đề bài

Mô tả

Cho n đoạn thẳng, đoạn thứ i có tọa độ [xi,yi]. Đoạn [a,b] được gọi là chứa đoạn [c,d] nếu a≤c và d≤b.

Với mỗi đoạn thẳng, hãy xác định:

  • Đoạn đó có chứa ít nhất một đoạn khác không?
  • Đoạn đó có được chứa bởi ít nhất một đoạn khác không?

Dữ liệu vào

  • Dòng đầu: số nguyên n — số lượng đoạn thẳng.
  • n dòng tiếp theo, dòng thứ i: hai số nguyên xi và yi (xi<yi).

Dữ liệu ra

  • Dòng 1: n số nguyên c1,c2,…,cn, trong đó ci=1 nếu đoạn i chứa ít nhất một đoạn khác, ngược lại ci=0.
  • Dòng 2: n số nguyên d1,d2,…,dn, trong đó di=1 nếu đoạn i được chứa bởi ít nhất một đoạn khác, ngược lại di=0.

Ràng buộc

  • 1≤n≤2·105
  • 1≤xi<yi≤109
  • Các đoạn đôi một phân biệt (không có hai đoạn hoàn toàn giống nhau).

Ví dụ

Input Output Giải thích
4
1 6
2 4
4 8
3 6
1 0 0 1
0 1 0 1
Đoạn [1,6] chứa [2,4] và [3,6]. Đoạn [3,6] được chứa bởi [1,6]. Đoạn [2,4] được chứa bởi [1,6].
3
1 10
2 5
3 4
1 1 0
0 1 1
[1,10] chứa cả hai đoạn kia. [2,5] chứa [3,4] và được chứa bởi [1,10].

Bình luận

Không có bình luận tại thời điểm này.

gnatmake 12.2.0 a68g 3.1.2 nasm 2.16.1 as_x64 2.47 awk 1.3.4 gcc 16.2.0 dotnet 10.0.402 g++ 16.2.0 g++-themis 16.2.0 g++17 16.2.0 g++20 16.2.0 g++23 16.2.0 clang++ 22.1.8 dmd 2.113.0 dart 3.13.6 gforth 0.7.3 gfortran 15.3.0 go 1.27.3 groovyc 5.1.3 javac 26.0.2.1 node 26.12.1 julia 1.13.2 kotlinc 2.4.21 lean 4.35.0 sbcl 2.2.9 lua 5.5.1 nim 2.2.12 fpc 3.2.2 fpc-themis 3.2.2 perl 5.42.3 php 8.5.12 pike 8.0 swipl 9.0.4 pypy3 7.3.23 python3 3.15.1 racket 8.7 ruby 4.0.8 rustc 1.99.1 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 swiftc 6.4.1 tclsh 8.6 bun 1.4.4 deno 2.9.8 v 0.5.2 zig 0.17.0