DELETE BOARD

Xem PDF

Điểm: 200 Thời gian: 1.0s Bộ nhớ: 500M Input: bàn phím Output: màn hình

Cho một bảng ô vuông gồm \(n\) dòng và \(m\) cột. Các dòng được đánh số từ 1 đến \(n\), các cột được đánh số từ 1 đếm \(m\). Ô nằm ở dòng \(i\) và cột \(j\) được gọi là ô \((i,j)\). Có \(k\) ô màu đen trên bảng, ô đen thứ \(i\) nằm ở vị trí \((x_i,y_i)\). Các ô còn lại trong bảng đều có màu trắng.

Ta có thể thực hiện một trong hai loại thao tác sau (mỗi thao tác có thể được thực hiện nhiều lần hoặc không lần nào).

• Chọn một dòng chỉ gồm các ô màu trắng, và xóa dòng đó khỏi bảng.

• Chọn một cột chỉ gồm các ô màu trắng, và xóa cột đó khỏi bảng.

Yêu cầu: Hãy tìm cách thực hiện các loại thao tác trên, sao cho số ô còn lại trong bảng là nhỏ nhất có thể.

Dữ liệu

  • Dòng đầu tiên gồm ba số nguyên \(n,m,k (1≤n,m,k≤10^5)\) - số dòng, số cột của bảng và số ô đen.
  • \(k\) dòng tiếp theo, dòng thứ \(i\) gồm hai số nguyên (\(x_i,y_i\))\((1≤x_i≤n,1≤y_i≤m)\) - vị trí của ô đen thứ \(i\). Dữ liệu vào đảm bảo không có hai ô đen nào ở cùng vị trí.

Kết quả: Gồm 2 dòng

  • Dòng thứ nhất: In ra số ô còn lại nhỏ nhất có thể sau khi thực hiện hai loại thao tác trên
  • Dòng thứ hai: In ra ký tự mũi tên chĩa sang phải (do bộ test bị lỗi, các bạn có thể mở testcase ra để copy ký tự đó nhé, vì mình copy vào đây mà không được)

Example input

3 4 3
2 1
2 4
3 3

Example output

6
?

Giải thích

  • Bảng ban đầu:

  • Ta có thể thực hiện thao tác biển đổi bảng như sau (các ô màu đỏ
    tương ứng với dòng hoặc cột được xóa):

Ràng buộc:

  • 50% test có \(n,m,k \le 100\)

Bình luận


  • 0
    blinh    6:36 p.m. 26 Tháng 2, 2024

    chỉ cần in ra dấu "?" là được rồi


    • 3
      huyhau6a2    9:03 p.m. 15 Tháng 5, 2022

      coi bộ để ac bài này BẮT BUỘC PHẢI WA 1 LẦN


      • 2
        VoBaThongL921    3:43 p.m. 15 Tháng 5, 2022

        cho mình hỏi bộ test có sai sót gì ko ạ

        1 phản hồi