Pagini recente » Cod sursa (job #2455781) | Cod sursa (job #2190090) | Cod sursa (job #865430) | Cod sursa (job #468584) | Cod sursa (job #1357098)
#include <iostream>
#include <fstream>
using namespace std;
int a[20][20],n,m;
void citire()
{ifstream f("flip.in");
f>>n;f>>m;
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
f>>a[i][j];
f.close();
}
void afis()
{for(int i=1;i<=n;i++)
{for(int j=1;j<=m;j++)
cout<<a[i][j];
cout<<endl;}
}
short check_line(int i)
{int ok=0;
for(int j=1;j<=m;j++)
ok=ok+a[i][j];
if(ok<0)
return 1;
return 0;}
short check_col(int j)
{int ok=0;
for(int i=1;i<=n;i++)
ok=ok+a[i][j];
if(ok<0)
return 1;
return 0;}
int check_flip()
{for(int i=1;i<=n;i++)
{if(check_line(i))
{for(int j=1;j<=m;j++)
a[i][j]=-1*a[i][j];
return 1;
}}
for(int j=1;j<=m;j++)
{if(check_col(j))
{for(int i=1;i<=n;i++)
a[i][j]=-1*a[i][j];
return 1;
}}
return 0;
}
void data_out()
{ofstream g("flip.out");
int suma=0;
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
suma=suma+a[i][j];
g<<suma;
g.close();
}
int main()
{citire();
//afis();
while(true)
{if(!check_flip())
break;}
data_out();
return 0;
}