Cuộn Cỏ Khô

Đề bài

Mô tả

Farmer John quản lý một cây nhị phân có N nút (lẻ). Nút i có cha là i/2. Mỗi nút i có giá trị ban đầu ai và chi phí thay đổi ci.

Thuật toán xấp xỉ trung vị hoạt động từ nút N đến nút 1: tại mỗi bước, nếu giá trị nút hiện tại không phải trung vị của nó và hai con, FJ hoán đổi giá trị nút hiện tại với con có giá trị là trung vị. Giá trị cuối cùng tại nút 1 là kết quả xấp xỉ.

FJ có thể thay đổi giá trị của nút i thành bất kỳ giá trị nào với chi phí ci (hoặc giữ nguyên miễn phí). Cho Q truy vấn, mỗi truy vấn cho giá trị mục tiêu m, hãy tìm chi phí tối thiểu để thuật toán trả về m.

Dữ liệu vào

  • Dòng 1: Số nguyên N
  • N dòng tiếp: Hai số aici
  • Dòng tiếp: Số nguyên Q
  • Q dòng tiếp: Mỗi dòng một số m

Dữ liệu ra

  • Q dòng, mỗi dòng chứa chi phí tối thiểu cho truy vấn tương ứng.

Ràng buộc

  • N,Q2·105, N lẻ
  • 0ai,ci,m109
  • Giới hạn thời gian: 4 giây

Ví dụ

Input Output Giải thích
5
10 10000
30 1000
20 100
50 10
40 1
11
55
50
45
40
35
30
25
20
15
10
5
111
101
101
100
100
100
100
0
11
11
111
Với m=20: không cần thay đổi gì (chi phí 0) vì thuật toán đã trả về 20.

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