trang chủ / đề bài / pairedup

Paired Up

Đề bài

Mô tả

Có N con bò trên trục số, con thứ i ở vị trí xi (đã sắp xếp tăng) với trọng số yi. Hai con bò có thể ghép cặp nếu khoảng cách giữa chúng không quá K.

Một phép ghép cặp là tối đại nếu không tồn tại hai con bò chưa ghép có thể ghép với nhau.

  • Nếu T=1: Tìm tổng trọng số nhỏ nhất của các con bò chưa ghép trong phép ghép tối đại nào đó.
  • Nếu T=2: Tìm tổng trọng số lớn nhất của các con bò chưa ghép trong phép ghép tối đại nào đó.

Dữ liệu vào

  • Dòng 1: Ba số nguyên T, N, K.
  • N dòng tiếp: Mỗi dòng gồm hai số nguyên xi và yi.

Dữ liệu ra

In ra tổng trọng số theo yêu cầu.

Ràng buộc

  • T∈{1,2}.
  • 1≤N≤105.
  • 1≤K≤109.
  • 0≤xi≤109 (đã sắp xếp).
  • 1≤yi≤104.

Ví dụ

Input Output Giải thích
2 5 2
1 2
3 2
4 2
5 1
7 2
6 Ghép cặp (1,3) và (4,5). Bò 7 không ghép. Hoặc ghép (3,4), để 1,5,7 chưa ghép với tổng 2+1+2=5. Tối đa là 6.
1 5 2
1 2
3 2
4 2
5 1
7 2
2 Cùng dữ liệu nhưng lấy giá trị nhỏ nhất. Số bò lẻ nên luôn có đúng một con chưa ghép. Con nhẹ nhất là bò ở vị trí 5 (trọng số 1), nhưng bỏ nó ra thì 1,3,4,7 không ghép hết được vì 4 và 7 cách nhau 3>2. Phương án tốt nhất là để bò ở vị trí 7 chưa ghép và ghép (1,3), (4,5), tổng bằng 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