Pagini recente » Cod sursa (job #2311040) | Cod sursa (job #1246445) | Cod sursa (job #2141567) | Cod sursa (job #303567) | Cod sursa (job #622025)
Cod sursa(job #622025)
#include<iostream.h>
#include<fstream.h>
int v[17][17],n,m,x[17],y[17];
void citire(){
ifstream fin("flip.in");
fin>>n>>m;
int i,j;
for(i=1;i<=n;i++){
for(j=1;j<=m;j++)
fin>>v[i][j];
}
fin.close();
}
void sum(){
int i,j;
for(i=1;i<=n;i++){
for(j=1;j<=m;j++){
x[i]+=v[i][j];
y[j]+=v[i][j];
}
}
}
void comc(int k){
int i;
for(i=1;i<=n;i++){
v[i][k]=-v[i][k];
}
y[k]=-y[k];
for(i=1;i<=n;i++)
x[i]=x[i]+2*v[i][k];
}
void coml(int k){
int i;
for(i=1;i<=m;i++){
v[k][i]=-v[k][i];
}
x[k]=-x[k];
for(i=1;i<=n;i++){
y[i]+=2*v[k][i];
}
}
int main(){
citire();
sum();
int i,j;
int ok=1;
do{
ok=1;
for(i=1;i<=m;i++){
if(y[i]<0){ comc(i);
ok=1;
}
}
}
while(ok==0);
do{
ok=1;
for(i=1;i<=n;i++){
if(x[i]<0){ coml(i);
ok=0;
}
}}
while(ok==0);
int s=0;
for(i=1;i<=n;i++){
for(j=1;j<=m;j++){
s+=v[i][j];
}
}
cout<<s;
return 0;
}