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

Hố trên Mặt Trăng

Đề bài

Mô tả

Người ta phát hiện n miệng hố hình tròn trên bề mặt Mặt Trăng, mỗi miệng hố được mô tả bằng toạ độ tâm ci và bán kính ri (đều là số nguyên dương). Coi mỗi miệng hố là một đoạn thẳng [ciri,ci+ri] trên trục số.

Một tập hợp các miệng hố được gọi là hợp lệ nếu với mọi hai miệng hố trong tập đó, hai đoạn tương ứng hoặc rời nhau hoàn toàn, hoặc một đoạn nằm hoàn toàn trong đoạn kia. Cho phép hai đoạn tiếp xúc tại đầu mút (kể cả tiếp xúc trong lẫn tiếp xúc ngoài).

Hãy chọn một tập con lớn nhất trong số n miệng hố sao cho tập đó hợp lệ.

Dữ liệu vào

  • Dòng đầu chứa số nguyên n.
  • n dòng tiếp theo, dòng thứ i chứa hai số nguyên ciri.

Các miệng hố được đánh số từ 1 tới n theo thứ tự xuất hiện trong dữ liệu vào. Không có hai miệng hố nào trùng nhau.

Dữ liệu ra

  • Dòng đầu in ra số lượng phần tử của tập hợp lệ lớn nhất.
  • Dòng thứ hai in ra các chỉ số (cách nhau bởi dấu cách) của các miệng hố trong tập đó, theo thứ tự bất kỳ.

Nếu có nhiều đáp án, in ra một đáp án bất kỳ.

Ràng buộc

  • 1n2000
  • 1ci,ri109

Ví dụ

Input Output Giải thích
4
1 1
2 2
4 1
5 1
3
2 1 4
Các đoạn tương ứng là [0,2],[0,4],[3,5],[4,6]. Tập {1,2,4} hợp lệ: [0,2][0,4], còn [4,6] rời với cả [0,2][0,4] (tiếp xúc tại 4 là chấp nhận được). Đoạn 3 tức [3,5] giao một phần với [0,4] nên không thể chọn cùng. Có thể in các chỉ số theo thứ tự bất kỳ.
5
2 1
4 1
6 1
8 1
5 3
4
1 2 3 4
Bốn miệng hố nhỏ rời nhau và đều nằm trong miệng hố lớn [2,8], nhưng chọn cả 5 miệng hố thì không hợp lệ vì [3,5] giao một phần với [1,3], [5,7]… nên đáp án tối đa là 4.
5
10 1
10 2
10 3
10 4
10 5
5
5 4 3 2 1
Cả 5 miệng hố cùng tâm nên đoạn này nằm trong đoạn kia; có thể chọn tất cả.

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