trang chủ / đề bài / balbeam18

Thanh Cân Bằng

Đề bài

Mô tả

Có một thanh cân bằng với N+2 vị trí được đánh số từ 0 đến N+1. Vị trí 0 và N+1 là hai đầu mút — nếu đến đó thì nhận được 0 điểm thưởng.

Mỗi vị trí k (1≤k≤N) có một giá trị thưởng f(k)≥0. Tại mỗi bước, khi đứng ở vị trí k, bạn có thể:

  • Nhảy xuống tại chỗ và nhận f(k) điểm thưởng, hoặc
  • Tung đồng xu: với xác suất 1/2 di chuyển sang trái (vị trí k−1), với xác suất 1/2 di chuyển sang phải (vị trí k+1).

Mục tiêu là tối đa hóa kỳ vọng số điểm thưởng nhận được. Gọi f*(k) là kỳ vọng điểm thưởng tối ưu khi bắt đầu ở vị trí k.

Với mỗi vị trí k từ 1 đến N, hãy tính ⌊f*(k)×105⌋.

Dữ liệu vào

  • Dòng 1: số nguyên N (2≤N≤105)
  • N dòng tiếp theo: giá trị f(1),f(2),…,f(N) (0≤f(k)≤109)

Dữ liệu ra

  • N dòng, dòng k chứa ⌊f*(k)×105⌋.

Ràng buộc

  • 2≤N≤105
  • 0≤f(k)≤109

Ví dụ

Input Output Giải thích
2
1
3
150000
300000
Từ vị trí 1: nhảy ngay → 1; tung xu → kỳ vọng (0+3)/2=1.5. Vậy f*(1)=1.5. Từ vị trí 2: f*(2)=max(3,(1.5+0)/2)=3. Xuất ra ⌊1.5×105⌋=150000 và 300000.

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