题目链接:https://codeforces.com/contest/1375/problem/A
题意
给出一个大小为 $n$ 的数组 $a$,可以反转每个数的正负,要求:
- 至少有 $frac{n - 1}{2}$ 对相邻的数满足 $a_{i+1} - a_i ge 0$
- 至少有 $frac{n - 1}{2}$ 对相邻的数满足 $a_{i+1} - a_i le 0$
输出任一满足要求后的数组 $a$ 。
题解
使得数组中的元素正负相间即可。
代码
#include <bits/stdc++.h> using namespace std; void solve() { int n; cin >> n; for (int i = 0; i < n; i++) { int x; cin >> x; cout << (i & 1 ? abs(x) : -abs(x)) << " "[i == n - 1]; } } int main() { int t; cin >> t; while (t--) solve(); }