题目大意:
给你一个n大小的数组(n一定为奇数),现在你可以改变其中元素的符号(+/-)
在操作后,使得有至少一半的ai <= ai+1,至少有一半ai >= ai+1,现在让你构造出这个数组
思路:
1、直接正负正负(或者负正负正)的一直下去,由于n为奇数,那么肯定就满足条件
2、直接在全取绝对值,然后正负正负(或者负正负正)。
AC Code:
#include<stdio.h>
#include<iostream>
using namespace std;
int main(){
int t;
cin>>t;
while(t--){
int n, a[109]={0};
cin>>n;
for(int i=0; i<n; i++){
cin>>a[i];
if(i&1 && a[i]<0)
a[i]=a[i]*-1;
else if(!(i&1) && a[i]>0)
a[i]=a[i]*-1;
}
for(int i=0; i<n; i++){
cout<<a[i]<<" ";
}
cout<<endl;
}
return 0;
}
Comments | NOTHING