Pagini recente » Cod sursa (job #2279373) | Cod sursa (job #1372163) | Cod sursa (job #2238180) | Cod sursa (job #1391379) | Cod sursa (job #2700098)
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("flip.in");
ofstream out("flip.out");
int main()
{
int n,m,c,sum,i,j,a;
in >> n;
in >> m;
int co=0;
c=1;
sum=0;
int suml[n+1], sumc[m+1],sumlf[n+1],sumcf[m+1], nr[(n*m)+1];
for(i=1; i<=n*m; i++)
{
in>>a;
nr[i]=a;
}
while(c==1)
{
c=0;
co=0;
for(i=1; i<=n; i++)
{
suml[i]=0;
sumlf[i]=0;
}
for(i=1; i<=m; i++)
{
sumc[i]=0;
sumcf[i]=0;
}
for(i=1; i<=n; i++)
{
for(j=1; j<=m; j++)
{
co=co+1;
suml[i]=suml[i]+nr[co];
sumc[j]=sumc [j]+nr[co];
sumlf[i]=sumlf[i] + nr[co]*(-1);
sumcf[j]=sumcf[j] + nr[co]*(-1);
}
}
for(i=1; i<=n; i++)
{
if(suml[i]<sumlf[i])
{
for(j=(i*m)-(m-1); j<=(i*m); j++)
{
nr[j]=nr[j]*-1;
}
c=1;
}
}
if(c==1)
{
continue;
}
for(i=1; i<=m; i++)
{
if(sumc[i]<sumcf[i])
{
for(j=i; j<=n*m; j=j+m)
{
nr[j]=nr[j]*-1;
}
c=1;
}
}
}
for(i=1; i<=n; i++)
{
sum=sum+suml[i];
}
out << sum;
}