trang chủ / bài tập / antiquity

Vùng đất bỏ hoang

Đề bài

Mô tả

Cho một lưới hình chữ nhật gồm n hàng và m cột. Ô ở hàng r, cột c được ký hiệu là (r,c).

Người ta lần lượt thực hiện q thao tác, mỗi thao tác thuộc một trong ba loại sau:

  • Loại 1 (1 r1 c1 r2 c2): dựng một hàng rào bao quanh hình chữ nhật có hai góc đối là (r1,c1)(r2,c2) (các cạnh song song với cạnh của lưới). Hàng rào nằm dọc theo biên của hình chữ nhật này.
  • Loại 2 (2 r1 c1 r2 c2): gỡ bỏ hàng rào đã được dựng quanh hình chữ nhật có hai góc đối là (r1,c1)(r2,c2). Đảm bảo rằng hàng rào này đang tồn tại trước khi gỡ.
  • Loại 3 (3 r1 c1 r2 c2): hỏi liệu có thể đi từ ô (r1,c1) đến ô (r2,c2) hay không, khi mỗi bước chỉ được di chuyển sang một ô kề cạnh và không được vượt qua bất kỳ hàng rào nào.

Được đảm bảo rằng tại mọi thời điểm, không có hai hàng rào nào có điểm chung, và không hàng rào nào chạm vào biên của lưới n×m. Nói cách khác, các hình chữ nhật được rào luôn hoặc lồng hẳn vào nhau, hoặc rời nhau hoàn toàn.

Với mỗi thao tác loại 3, hãy xác định xem chuyến đi có khả thi hay không.

Dữ liệu vào

  • Dòng đầu chứa ba số nguyên n, m, q.
  • q dòng tiếp theo, mỗi dòng chứa năm số nguyên t, r1, c1, r2, c2 mô tả một thao tác như trên.

Với các thao tác loại 1 và loại 2 luôn có 2r1r2n12c1c2m1. Với thao tác loại 3 không có ràng buộc thêm.

Dữ liệu ra

Với mỗi thao tác loại 3, in ra trên một dòng riêng: "Yes" nếu đi được, ngược lại in "No".

Ràng buộc

  • 1n,m2500
  • 1q100000
  • 1t3; 1r1,r2n; 1c1,c2m

Ví dụ

Input Output Giải thích
5 6 5
1 2 2 4 5
1 3 3 3 3
3 4 4 1 1
2 2 2 4 5
3 1 1 4 4
No
Yes
Sau khi dựng hai hàng rào, ô (4,4) nằm bên trong hình chữ nhật (2,2)-(4,5) còn ô (1,1) nằm bên ngoài, nên không đi được. Sau khi gỡ hàng rào (2,2)-(4,5), hai ô (1,1)(4,4) cùng nằm ngoài mọi hàng rào còn lại nên đi được.
8 20 8
1 2 2 7 8
1 4 4 5 6
1 2 12 7 18
3 4 4 4 15
3 4 4 5 6
3 2 2 7 8
3 4 4 2 2
3 3 15 6 16
No
Yes
Yes
No
Yes
Ô (4,4) bị bao bởi hai hàng rào lồng nhau, còn (4,15) bị bao bởi một hàng rào khác rời hẳn, nên không đi được. Hai ô cùng nằm trong vòng rào trong cùng thì đi được, hai ô cùng nằm trong vòng ngoài (nhưng ngoài vòng trong) cũng đi được vì có thể đi vòng qua.

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.46 awk 1.3.4 gcc 16.1.0 csc 6.12.0.200 g++ 16.1.0 g++-themis 16.1.0 g++17 16.1.0 g++20 16.1.0 g++23 16.1.0 clang++ 22.1.6 dmd 2.112.0 dart 3.12.1 gforth 0.7.3 gfortran 12.2.0 go 1.26.3 groovyc 5.0.6 javac 25.0.3 node 26.2.0 kotlinc 2.3.21 sbcl 2.2.9 lua 5.4.8 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.6 pike 8.0 pypy3 7.3.23 python3 3.14.5 racket 8.7 ruby 4.0.5 rustc 1.96.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 tclsh 8.6 bun 1.3.14 deno 2.8.1 v 0.5.1 zig 0.16.0