Yaroslav and Sequence CodeForces - 302C
考察:思维
思路:
首先要发现负数个数a,正数个数b转化为其他ai bi实际上构成了一张无向图.
然后就能发现当负数个数为奇数时,且n为偶数时,会有一个负数不能转化为正数.
1 #include <iostream> 2 #include <cstdio> 3 #include <algorithm> 4 using namespace std; 5 const int N = 210; 6 int n,a[N],cnt,ans; 7 int main()//不一定只改变一次 8 { 9 scanf("%d",&n); 10 for(int i=1;i<n<<1;i++) 11 { 12 scanf("%d",&a[i]); 13 if(a[i]<0) 14 { 15 a[i] = -a[i]; 16 cnt++; 17 } 18 ans+=a[i]; 19 } 20 sort(a+1,a+2*n); 21 if(cnt%2&&n%2==0) ans-=2*a[1]; 22 printf("%d\n",ans); 23 return 0; 24 }