trang chủ / đề bài / funcagain

Hàm số một lần nữa

Đề bài

Mô tả

Cho một dãy số nguyên a1,a2,…,an. Với mỗi cặp chỉ số l,r thỏa mãn 1≤l<r≤n, định nghĩa hàm:

f(l,r)=∑i=lr−1(−1)i−l·|ai−ai+1|

Nói cách khác, f(l,r) là tổng đan dấu của các giá trị tuyệt đối của hiệu hai phần tử liên tiếp, bắt đầu từ vị trí l với dấu cộng:

f(l,r)=|al−al+1|−|al+1−al+2|+|al+2−al+3|−⋯

Hãy tính giá trị lớn nhất của f(l,r) trên tất cả các cặp (l,r) hợp lệ.

Dữ liệu vào

  • Dòng đầu chứa số nguyên n là kích thước của dãy.
  • Dòng thứ hai chứa n số nguyên a1,a2,…,an.

Dữ liệu ra

  • In ra một số nguyên duy nhất là giá trị lớn nhất của f(l,r).

Ràng buộc

  • 2≤n≤105
  • −109≤ai≤109

Ví dụ

Input Output Giải thích
5
1 4 2 3 1
3 Giá trị lớn nhất đạt được tại [1,2]: f=‖1−4‖=3; cũng đạt tại [2,5]: ‖4−2‖−‖2−3‖+‖3−1‖=2−1+2=3.
4
1 5 4 7
6 Đạt cực đại trên cả dãy [1,4]: ‖1−5‖−‖5−4‖+‖4−7‖=4−1+3=6.
2
1 2
1 Chỉ có một cặp (1,2): f=‖1−2‖=1.

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