今天是肿么了?开始没有看懂题意,以为是水题,交了一遍wa了,,再看看发现看错题了,改改再交还是wa..在看看题,总算看懂题了,但是把样例算错了,,一直以为是看错题了..一直看啊看,几个小时过去了都没有看明白..<中间开了一个会,还有看了一点别人的博客>..原来是自己算错了.以后一定要用手算了,
#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <queue>
#include <cmath>
#include <stack>
#include <map>
#include <string>
#define LL long long
#define DB double
using namespace std;
const int N = 2009;
int re[N];
int get(int n)
{
int ret =0 ;
for(int i=0;i<n;i++) ret+=re[i];
return ret;
}
int main()
{
#ifndef ONLINE_JUDGE
freopen("in.txt","r",stdin);
#endif
int ans = 0;
int n;scanf("%d",&n);
for(int i=0;i<(n<<1)-1;i++) scanf("%d",&re[i]);
if(n&1)
{
for(int i=0;i<(n<<1);i++)
ans += abs(re[i]);
}else
{
int x =0 ;
for(int i=0;i<(n<<1);i++) if(re[i]<0) x++;
if(x&1)
{
int x = 0x3f3f3f3f;
for(int i=0;i<(n<<1)-1;i++)
{
x = min(x,abs(re[i]));
}
for(int i=0;i<(n<<1);i++) ans+=abs(re[i]);
ans -= 2*x;
}else
{
for(int i=0;i<(n<<1);i++) ans+=abs(re[i]);
}
}
cout<<ans<<endl;
return 0;
}