trang chủ / đề bài / elections57

Vận động tranh cử

Đề bài

Mô tả

Bạn đang tranh cử chức tỉnh trưởng của một thành phố nhỏ. Nhờ các cuộc khảo sát, bạn biết chính xác mỗi cử tri hiện đang định bầu cho ứng viên nào, và biết số tiền cần chi để thuyết phục cử tri đó đổi ý mà bầu cho bạn.

Thành phố có N cử tri. Cử tri thứ i định bầu cho ứng viên ai, và nếu bạn trả cho người đó bi đồng thì người đó sẽ chuyển sang bầu cho bạn. Bạn là ứng viên số 0, nên ai=0 nghĩa là cử tri đó đã ủng hộ bạn sẵn (khi đó bi=0, và tất nhiên bạn không cần mua phiếu của họ).

Bạn thắng cử khi số phiếu của bạn nhiều hơn hẳn số phiếu của mọi ứng viên khác. Hãy tính số tiền ít nhất cần chi để thắng cử.

Dữ liệu vào

  • Dòng đầu chứa số nguyên N: số cử tri của thành phố.
  • N dòng tiếp theo, dòng thứ i chứa hai số nguyên ai và bi: ứng viên mà cử tri thứ i đang ủng hộ và giá để mua phiếu của người đó.

Dữ liệu ra

Một số nguyên duy nhất: số tiền nhỏ nhất cần chi để bạn thắng cử.

Ràng buộc

  • 1≤N≤105
  • 0≤ai≤105
  • 0≤bi≤104
  • Nếu ai=0 thì bi=0

Ví dụ

Input Output Giải thích
5
1 2
1 2
1 2
2 1
0 0
3 Bạn có sẵn 1 phiếu. Mua 1 phiếu của ứng viên 1 (giá 2) và phiếu duy nhất của ứng viên 2 (giá 1): bạn được 3 phiếu, ứng viên 1 còn 2 phiếu, ứng viên 2 còn 0. Tổng chi phí 3.
4
1 2
1 2
2 1
0 0
2 Mua 1 phiếu giá 2 của ứng viên 1: bạn có 2 phiếu, ứng viên 1 còn 1, ứng viên 2 có 1. Chỉ mua phiếu giá 1 của ứng viên 2 thì bạn có 2 phiếu nhưng ứng viên 1 cũng có 2, không hơn hẳn nên không thắng.
1
100000 0
0 Cử tri duy nhất ủng hộ ứng viên 100000 với giá 0. Mua phiếu đó, bạn được 1 phiếu còn ứng viên kia 0 phiếu, tốn 0 đồng.
5
0 0
2 6023
1 9999
2 417
2 1158
1575 Ứng viên 2 đang có 3 phiếu nên phải mua bớt ít nhất 2 phiếu của họ. Hai phiếu rẻ nhất có giá 417 và 1158, tổng 1575. Khi đó bạn có 3 phiếu, hai ứng viên còn lại mỗi người 1 phiếu.

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