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

Vasya và Robot

Đề bài

Mô tả

n món đồ xếp thành một hàng, đánh số từ 1 đến n từ trái sang phải. Món thứ i nặng wi ki-lô-gam.

Một con robot cần thu gom toàn bộ n món đồ. Robot có hai tay: tay trái và tay phải. Ở mỗi bước, robot thực hiện đúng một trong hai thao tác:

  1. Dùng tay trái nhặt món ngoài cùng bên trái còn lại, tốn wi·l đơn vị năng lượng (wi là khối lượng món đó, l là một tham số cho trước). Nếu thao tác ngay trước đó cũng là tay trái, robot tốn thêm Ql đơn vị năng lượng.
  2. Dùng tay phải nhặt món ngoài cùng bên phải còn lại, tốn wj·r đơn vị năng lượng (wj là khối lượng món đó, r là một tham số cho trước). Nếu thao tác ngay trước đó cũng là tay phải, robot tốn thêm Qr đơn vị năng lượng.

Hãy tìm lượng năng lượng nhỏ nhất mà robot cần dùng để nhặt hết tất cả các món đồ.

Dữ liệu vào

  • Dòng đầu chứa năm số nguyên n, l, r, Ql, Qr.
  • Dòng thứ hai chứa n số nguyên w1,w2,,wn.

Dữ liệu ra

  • In ra một số nguyên duy nhất: lượng năng lượng nhỏ nhất cần dùng.

Ràng buộc

  • 1n105.
  • 1l,r100.
  • 1Ql,Qr104.
  • 1wi100.

Ví dụ

Input Output Giải thích
3 4 4 19 1
42 3 99
576 l=r, ta có thể nhặt xen kẽ: trái, phải, rồi trái. Tổng năng lượng 4·42+4·99+4·3=576.
4 7 2 3 9
1 2 3 4
34 Cách tối ưu: nhặt một món bên phải, rồi một món bên trái, rồi hai món bên phải. Tổng năng lượng (2·4)+(7·1)+(2·3)+(2·2+9)=34; số hạng +9 là phụ phí Qr do hai lần nhặt phải liên tiếp.
2 100 100 10000 10000
100 100
20000 Nhặt một món bên trái và một món bên phải, không có hai thao tác cùng tay liên tiếp nên không mất phụ phí: 100·100+100·100=20000.

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