VOI 25 Bài 2 - Lập trình Robot AI

Xem dạng PDF

Gửi bài giải

Điểm: 0,01 (OI)
Giới hạn thời gian: 2.0s
Giới hạn bộ nhớ: 1G
Input: ROAI.INP
Output: ROAI.OUT

Tác giả:
Dạng bài
Ngôn ngữ cho phép
C, C++, Go, Java, Kotlin, Pascal, PyPy, Python, Rust, Scratch

Trong cuộc thi trí tuệ nhân tạo ROAI2025, Ban tổ chức yêu cầu các đội chơi lập trình Robot AI trên sân đấu trong môi trường thực tế ảo tham chiếu trên hệ trục tọa độ ~Oxy~. Mỗi đội chơi cần đặt 2 con Robot AI tại 2 điểm phân biệt trên đường thẳng ~y = 2~ với tọa độ ~x~ là số nguyên trong phạm vi từ 0 tới ~N~. Mỗi Robot AI có một mắt thần có nhiệm vụ quan sát đường thẳng ~y = 0~. Sàn đấu có hai tấm chắn biên là các đoạn thẳng ~AB~ và ~CD~ với tọa độ: ~A(0,2)~, ~B(0,1)~, ~C(N,1)~, ~D(N,2)~. Ban tổ chức đặt thêm ~K~ tấm chắn khác là những đoạn thẳng nằm trên đoạn ~BC~. Tấm chắn thứ ~i~ trong số ~K~ tấm chắn bắt đầu từ điểm ~(L_i,1)~ và kết thúc ở điểm ~(R_i,1)~. Robot AI tại điểm ~U~ trên đường thẳng ~y = 2~ chỉ quan sát được những điểm ~V~ trên đường thẳng ~y = 0~ nếu như đoạn thẳng ~UV~ không giao với bất kỳ đoạn thẳng là tấm chắn nào trong số ~K + 2~ tấm chắn trên. Một đoạn trên đường thẳng ~y = 0~ gọi là quan sát được nếu như mọi điểm trên đoạn đó (ngoại trừ 2 đầu mút) đều quan sát được. Nhiệm vụ của mỗi đội chơi là cần đặt được 2 con Robot AI sao cho tổng độ dài các đoạn quan sát được trên đường thẳng ~y = 0~ bởi ít nhất một Robot AI là lớn nhất có thể.

Yêu cầu: Đội tuyển của Tuấn lần đầu tiên tham gia thi tài, hãy giúp đội của Tuấn tìm ra cách đặt tối ưu cho 2 con Robot AI.

Input

Vào từ file văn bản ROAI.INP:

  • Dòng đầu chứa hai số nguyên ~N~ và ~K~ ~(1 \le N \le 10^9; 1 \le K \le 2000)~.

  • Dòng thứ ~i~ trong số ~K~ dòng tiếp theo chứa hai số nguyên ~L_i~ và ~R_i~ ~(0 \le L_i \lt R_i \le N)~.

Dữ liệu bảo đảm ~L_1 \lt R_1 \lt L_2 \lt R_2 \lt \ldots \lt L_K \lt R_K~. Các số trên cùng một dòng cách nhau bởi dấu cách.

Output

Ghi ra file văn bản ROAI.OUT:

  • Một số nguyên duy nhất là tổng độ dài các đoạn quan sát được trên đường thẳng ~y = 0~ trong phương án tối ưu tìm được.

Scoring

Subtask Điểm Giới hạn
1 ~16\%~ ~N \le 200~
2 ~16\%~ ~N \le 2000; K \le 20~
3 ~20\%~ ~N \le 20000~
4 ~20\%~ ~K \le 500~
5 ~28\%~ Không có ràng buộc nào thêm

Sample Input 1

3 1
0 1

Sample Output 1

7

Sample Input 2

5 2
1 2
3 5

Sample Output 2

8

Notes

  • Trong ví dụ 1, một phương án đặt vị trí tối ưu cho 2 Robot AI là ~x = 0~ và ~x = 3~. Robot AI thứ nhất quan sát được đoạn ~[2, 6]~; Robot AI thứ hai quan sát được đoạn ~[-1, 3]~.

    image

  • Trong ví dụ 2, một phương án đặt vị trí tối ưu cho 2 Robot AI là ~x = 2~ và ~x = 4~. Robot AI thứ nhất quan sát được đoạn ~[-2, 0]~ và đoạn ~[2, 4]~; Robot AI thứ hai quan sát được đoạn ~[-4, 2]~ và đoạn ~[0, 2]~.

    image


Bình luận

Hãy đọc nội quy trước khi bình luận.


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