#CF1791E. Negatives and Positives
Negatives and Positives
题目描述
给定一个包含 个元素的数组 ,你可以进行如下操作任意次:
- 选择 个相邻的元素,并将它们的符号都翻转。也就是说,选择一个下标 ,满足 ,然后令 且 。
请你求出经过任意次上述操作后,数组可能获得的最大和。
输入格式
输入包含多组测试数据。第一行包含一个整数 (),表示测试用例的数量。
每个测试用例的第一行包含一个整数 (),表示数组的长度。
接下来一行包含 个用空格分隔的整数 ()。
保证所有测试用例中 的总和不超过 。
输出格式
对于每个测试用例,输出经过任意次操作后数组可能获得的最大和。
样例
5
3
-1 -1 -1
5
1 5 -5 0 2
3
1 2 3
6
-1 10 9 8 7 6
2
-1 -1
1
13
6
39
2
样例说明
对于第一个测试用例,通过对前两个元素进行操作,可以将数组从 变为 ,可以证明这个数组获得的最大和为 。
对于第二个测试用例,通过对 和 进行操作,可以将数组从 变为 ,此时所有元素都非负,和最大,为 。
对于第三个测试用例,数组已经全为正数,无需操作,答案就是整个数组的和,即 。
由 ChatGPT 4.1 翻译
来源
Codeforces 1791E,英文题名 Negatives and Positives。