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

Phi thuyền và kho vàng

Đề bài

Mô tả

Quân nổi dậy có s phi thuyền, phi thuyền thứ i có sức tấn công ai.

Đế chế có b căn cứ, căn cứ thứ j có sức phòng thủ dj và chứa gj đơn vị vàng.

Một phi thuyền có sức tấn công a có thể tấn công mọi căn cứ có sức phòng thủ da và lấy toàn bộ số vàng tại các căn cứ đó.

Với mỗi phi thuyền, hãy tính lượng vàng tối đa mà nó có thể lấy được (giả sử nó được phái đi một mình và các căn cứ chưa bị bất kỳ phi thuyền nào khác chạm tới).

Dữ liệu vào

  • Dòng đầu chứa hai số nguyên sb.
  • Dòng thứ hai chứa s số nguyên a1,a2,,as — sức tấn công của từng phi thuyền.
  • b dòng tiếp theo, mỗi dòng chứa hai số nguyên djgj — sức phòng thủ và lượng vàng của căn cứ thứ j.

Dữ liệu ra

In ra s số nguyên trên cùng một dòng, cách nhau bởi dấu cách, là lượng vàng tối đa mà mỗi phi thuyền lấy được, theo thứ tự xuất hiện trong dữ liệu vào.

Ràng buộc

  • 1s,b105
  • 0ai109
  • 0dj109
  • 0gj104

Ví dụ

Input Output Giải thích
5 4
1 3 5 2 4
0 1
4 2
2 8
9 4
1 9 11 9 11 Phi thuyền 1 (sức tấn công 1) chỉ phá được căn cứ 1 (phòng thủ 0, vàng 1). Phi thuyền 2 (sức tấn công 3) phá được căn cứ 1 và 3 (phòng thủ 0 và 2), thu 1+8=9. Phi thuyền 3 (sức tấn công 5) phá được căn cứ 1, 2, 3, thu 1+2+8=11.
1 2
454169042
417874927 964
538969462 3466
964 Phi thuyền duy nhất có sức tấn công 4,5×108, chỉ vượt qua được căn cứ thứ nhất (phòng thủ 4,17×108), lấy 964 vàng.

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