Pagini recente » Cod sursa (job #2428648) | Cod sursa (job #3218047) | Cod sursa (job #2514845) | Cod sursa (job #439543) | Cod sursa (job #2891125)
#include <bits/stdc++.h>
using namespace std;
int sumLinii[16];
int sumColoa[16];
int Map[16][16];
int N,M;
void SwitchLine(int i)
{
for(int j=0; j<M; j++)
{
Map[j][i]*=-1;
sumColoa[j]+=2*Map[j][i];
}
sumLinii[i]*=-1;
}
void SwitchColom(int j)
{
for(int i=0; i<N; i++)
{
Map[j][i]*=-1;
sumLinii[i]+=2*Map[j][i];
}
sumColoa[j]*=-1;
}
int GetSum()
{
int rezult = 0;
if(N>=M)
{
for(int j=0; j<M; j++)
{
rezult+=sumColoa[j];
}
}
else
{
for(int i=0; i<N; i++)
{
rezult+=sumLinii[i];
}
}
return rezult;
}
int main()
{
ifstream in("flip.in");
in>>N>>M;
for(int i=0; i<N; i++)
{
for(int j=0; j<M; j++)
{
in>>Map[j][i];
sumLinii[i]+=Map[j][i];
sumColoa[j]+=Map[j][i];
}
}
in.close();
bool negative = true;
for(int j=0; j<M; j++)
{
if(sumColoa[j]<0)
{
SwitchColom(j);
//cout<<sumColoa[j]<<" ";
}
}
//std::cout<<"\n";
for(int i=0; i<N; i++)
{
if(sumLinii[i]<0)
{
SwitchLine(i);
//cout<<sumLinii[i]<<" ";
}
}
int rezult = GetSum();
ofstream out("flip.out");
out<<rezult;
out.close();
}