BIỂU THỨC

(ptit016d.*)

Một dãy gồm \(n\) số nguyên không âm \(a_{1},a_{2},\ldots,a_{n}\) được viết thành một hàng ngang, giữa hai số liên tiếp có một khoảng trắng, như vậy có tất cả \(n - 1\) khoảng trắng. Người ta muốn đặt \(k\) dấu cộng và \((n - 1 - k)\) dấu trừ vào \((n - 1)\) khoảng trắng đó để nhận được một biểu thức có giá trị lớn nhất.

Ví dụ, với dãy gồm 5 số nguyên 28, 9, 5, 1, 69 và \(k = 2\ \)thì cách đặt là biểu thức có giá trị lớn nhất.

Yêu cầu: Cho dãy gồm \(n\) số nguyên không âm \(a_{1},a_{2},\ldots,a_{n}\) và số nguyên dương \(k\), hãy tìm cách đặt \(k\) dấu cộng và \((n - 1 - k)\) dấu trừ vào \((n - 1)\) khoảng trắng để nhận được một biểu thức có giá trị lớn nhất.

Dữ liệu vào:

+ Dòng đầu chứa hai số nguyên dương \(n,k\ \left( k < n \leq 10^{5} \right)\)

+ Dòng thứ hai chứa \(n\) số nguyên không âm \(a_{1},a_{2},\ldots,a_{n}\) \((0 < a_{i} \leq 10^{6})\)

Kết quả:

+ Một số nguyên là giá trị của biểu thức đạt được.

Ví dụ:

Input Output
5 2
28 9 5 1 69
100

Bạn cần đăng nhập để nộp bài

hpcode.edu.vn
Code tích cực
Trong 24h
  1. trungnam (6/7)
  2. sythai (5/8)
  3. npk1605 (5/10)
Trong 7 ngày
  1. nguyenanhvu (40/64)
  2. khieuquan (35/59)
  3. ngokhang (27/55)
Trong 30 ngày
  1. quechi (85/105)
  2. dangphong3108 (79/125)
  3. kiennhientv (79/179)
Thống kê
AC/Sub: 97887/180710
Pascal: 17121
C++: 130348
Python: 33199
Lượt xem/tải tests: 38905

Lưu Hải Phong - 2020
[email protected]