trang chủ / đề bài / wondersum

Tổng kỳ diệu

Đề bài

Mô tả

Cho một dãy gồm n số nguyên a1,a2,…,an.

Bạn được phép thực hiện lần lượt đúng hai thao tác sau:

  1. Chọn một tiền tố của dãy (phần đầu dãy, có thể rỗng) và nhân tất cả các phần tử trong đó với −1.
  2. Sau đó chọn một hậu tố của dãy (phần cuối dãy, có thể rỗng) và nhân tất cả các phần tử trong đó với −1.

Tiền tố và hậu tố được chọn có thể giao nhau. Khi đó mỗi phần tử thuộc phần giao bị nhân với −1 hai lần, tức là giữ nguyên giá trị ban đầu.

Hãy tìm tổng lớn nhất của dãy có thể thu được sau hai thao tác trên.

Dữ liệu vào

  • Dòng đầu chứa số nguyên n, số phần tử của dãy.
  • Dòng thứ hai chứa n số nguyên a1,a2,…,an.

Dữ liệu ra

Một số nguyên duy nhất là tổng lớn nhất có thể thu được.

Ràng buộc

  • 1≤n≤105
  • −104≤ai≤104

Ví dụ

Input Output Giải thích
3
-1 -2 -3
6 Chọn tiền tố là toàn bộ dãy và hậu tố rỗng, dãy trở thành 1 2 3 với tổng 1+2+3=6.
5
-4 2 0 5 0
11 Chọn tiền tố gồm đúng phần tử đầu tiên và hậu tố rỗng, dãy trở thành 4 2 0 5 0 với tổng 11.
5
-1 10 -5 10 -2
18 Chọn tiền tố gồm phần tử đầu tiên và hậu tố gồm phần tử cuối cùng, dãy trở thành 1 10 -5 10 2 với tổng 18. Giữ nguyên −5 ở giữa vẫn tốt hơn là đảo dấu nó kèm theo cả 10 bên cạnh.

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