trang chủ / đề bài / loadbal16

Cân Bằng Tải

Đề bài

Mô tả

Cho N điểm trên mặt phẳng, tọa độ của mỗi điểm là các số nguyên dương lẻ không vượt quá 106. Cần đặt hai đường thẳng phân chia: một đường thẳng đứng x=a và một đường thẳng nằm ngang y=b, trong đó a,b là các số nguyên chẵn dương. Hai đường thẳng này chia mặt phẳng thành 4 góc phần tư (Tây Bắc, Đông Bắc, Tây Nam, Đông Nam).

Hãy chọn a và b sao cho số điểm lớn nhất trong bất kỳ góc phần tư nào là nhỏ nhất có thể.

Vì tọa độ các điểm đều lẻ còn a,b chẵn nên không có điểm nào nằm đúng trên hai đường thẳng. Giá trị a và b được chọn tùy ý trong các số chẵn dương, không bắt buộc phải nằm giữa hai điểm nào đó, vì vậy một hoặc hai góc phần tư có thể rỗng.

Dữ liệu vào

  • Dòng đầu: số nguyên N (1≤N≤100000).
  • N dòng tiếp theo: mỗi dòng gồm hai số nguyên lẻ xi, yi (1≤xi,yi≤106) là tọa độ của điểm thứ i. Các điểm có thể trùng nhau.

Dữ liệu ra

Một số nguyên duy nhất: số điểm lớn nhất trong một góc phần tư khi chọn a,b tối ưu.

Ràng buộc

  • 1≤N≤100000
  • 1≤xi,yi≤106, xi và yi đều là số lẻ.

Ví dụ

Input Output Giải thích
7
7 3
5 5
7 13
3 1
11 7
5 3
9 1
2 Chọn a=6, b=4. Tây Nam có (3,1) và (5,3) nên bằng 2; Tây Bắc chỉ có (5,5) nên bằng 1; Đông Nam có (7,3) và (9,1) nên bằng 2; Đông Bắc có (7,13) và (11,7) nên bằng 2. Kết quả là 2, và vì ⌈7/4⌉=2 nên không thể nhỏ hơn.
4
1 1
1 3
1 5
1 7
2 Bốn điểm cùng nằm trên một đường thẳng đứng nên đường x=a không tách được chúng: với a=2 cả bốn điểm đều ở phía tây. Chọn thêm b=4 thì Tây Nam có (1,1), (1,3) và Tây Bắc có (1,5), (1,7), hai góc phía đông rỗng, kết quả là 2.

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.47 awk 1.3.4 gcc 16.2.0 dotnet 10.0.402 g++ 16.2.0 g++-themis 16.2.0 g++17 16.2.0 g++20 16.2.0 g++23 16.2.0 clang++ 22.1.8 dmd 2.113.0 dart 3.13.6 gforth 0.7.3 gfortran 15.3.0 go 1.27.3 groovyc 5.1.3 javac 26.0.2.1 node 26.12.1 julia 1.13.2 kotlinc 2.4.21 lean 4.35.0 sbcl 2.2.9 lua 5.5.1 nim 2.2.12 fpc 3.2.2 fpc-themis 3.2.2 perl 5.42.3 php 8.5.12 pike 8.0 swipl 9.0.4 pypy3 7.3.23 python3 3.15.1 racket 8.7 ruby 4.0.8 rustc 1.99.1 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 swiftc 6.4.1 tclsh 8.6 bun 1.4.4 deno 2.9.8 v 0.5.2 zig 0.17.0