CF2062C.Cirno and Operations

普及-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Cirno 有一个长度为 nn 的序列 aa 。她可以执行以下两种操作中的任意一种(可能零次),除非当前序列 aa 的长度为 11:

  • 反转序列。严格来说,序列 [a1,a2,…,an][a_1, a_2, \ldots, a_n] 变为 [an,an−1,…,a1][a_n, a_{n-1}, \ldots, a_1]。
  • 将序列替换为其差分序列。严格来说,序列 [a1,a2,…,an][a_1, a_2, \ldots, a_n] 变为 [a2−a1,a3−a2,…,an−an−1][a_2 - a_1, a_3 - a_2, \ldots, a_n - a_{n-1}]。

在所有操作之后,找到序列 aa 的元素和的最大值。

输入格式

输入的第一行包含一个整数 t(1≤t≤100)t (1 \leq t \leq 100 ) — 输入测试用例的数量。

每个测试用例的第一行包含一个整数 $ n ( 1 \leq n \leq 50 )$ — 序列 $ a $ 的长度。

每个测试用例的第二行包含 $ n $ 个整数 $ a_1, a_2, \ldots, a_n ( |a_i| \leq 1000 )$ — 序列 $ a $。

输出格式

对于每个测试用例,输出一个整数,表示序列的元素和的最大值。

输入输出样例

  • 输入#1

    5
    1
    -1000
    2
    5 -3
    2
    1000 1
    9
    9 7 9 -9 9 -8 7 -8 9
    11
    678 201 340 444 453 922 128 987 127 752 0

    输出#1

    -1000
    8
    1001
    2056
    269891

说明/提示

在第一个测试用例中,Cirno 无法进行任何操作,因此答案是 −1000-1000。

在第二个测试用例中,Cirno 首先反转序列,然后将其替换为差分序列:[5,−3]→[−3,5]→[8][5, -3] \to [-3, 5] \to [8]。可以证明这样能使总和最大化,因此答案是 88。

在第三个测试用例中,Cirno 可以选择不进行任何操作,因此答案是 10011001。

输入解题思路,AI测评打分。不知道怎么写?

首页