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

Xe về nhà

Đề bài

Mô tả

Trên một bàn cờ kích thước 109×109, các hàng được đánh số từ dưới lên trên từ 1 đến 109, các cột được đánh số từ trái sang phải từ 1 đến 109. Ô ở cột x, hàng y có tọa độ (x,y).

Một quân xe đang đứng ở ô (1,1) và muốn về nhà: đi tới một ô bất kỳ thuộc hàng trên cùng (hàng số 109). Quân xe mỗi bước di chuyển tới một ô bất kỳ cùng hàng hoặc cùng cột với ô hiện tại, với điều kiện trên đường đi không vướng vật cản nào.

Trên bàn cờ có hai loại vật cản:

  • Vật cản dọc, xác định bởi một số x: một đường chắn vô hạn nằm giữa cột x và cột x+1.
  • Vật cản ngang, xác định bởi ba số x1,x2,y: một đoạn chắn nằm sát mép trên của các ô thuộc hàng y, từ cột x1 đến cột x2. Hai vật cản ngang bất kỳ không có điểm chung (nhưng vật cản ngang có thể chạm vật cản dọc).

Quân xe có thể xóa bỏ vật cản, nhưng việc này rất tốn sức. Hãy tìm số vật cản ít nhất cần xóa để quân xe có thể đi từ (1,1) tới một ô nào đó ở hàng 109.

Dữ liệu vào

  • Dòng đầu chứa hai số nguyên nm: số vật cản dọc và số vật cản ngang.
  • n dòng tiếp theo, mỗi dòng chứa một số nguyên x: vật cản dọc nằm giữa cột x và cột x+1.
  • m dòng tiếp theo, mỗi dòng chứa ba số nguyên x1,x2,y: vật cản ngang nằm sát mép trên các ô hàng y, từ cột x1 đến cột x2.

Tất cả vật cản đôi một khác nhau, và hai vật cản ngang bất kỳ không có điểm chung.

Dữ liệu ra

In ra một số nguyên duy nhất: số vật cản ít nhất cần xóa.

Ràng buộc

  • 0n,m105
  • 1x<109
  • 1x1x2109, 1y<109

Ví dụ

Input Output Giải thích
2 3
6
8
1 5 6
1 9 4
2 4 2
1 Chỉ cần xóa vật cản ngang thứ hai (1,9,4), quân xe men theo cột 6 để lên hàng trên cùng.
1 3
4
1 5 3
1 9 4
4 6 6
1 Xóa vật cản dọc x=4. Nếu chỉ xóa một vật cản ngang thì vẫn bị vật cản ngang còn lại chặn trên và vật cản dọc chặn phải.
0 2
1 1000000000 4
1 1000000000 2
2 Hai vật cản ngang trải hết chiều rộng bàn cờ, không thể vòng qua, buộc phải xóa cả hai.
0 0 0 Không có vật cản nào, quân xe đi thẳng lên.
2 3
4
6
1 4 3
1 5 2
1 6 5
2 Xóa vật cản dọc thứ nhất (x=4) và vật cản ngang thứ ba (1,6,5).

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