Pagini recente » Cod sursa (job #2603254) | Borderou de evaluare (job #2823193) | Cod sursa (job #2966593) | Cod sursa (job #1136672) | Cod sursa (job #963127)
Cod sursa(job #963127)
#include <iostream>
#include <fstream>
using namespace std;
int p=0,m,n,i,j,v[17][17];
void afisare()
{
for(i=0;i<n;i++)
{
for(j=0;j<m;j++)
cout<<v[i][j]<<" ";
cout<<'\n';
};
cout<<'\n'<<'\n';
}
int sc(int coloana)
{
int s=0;
for(int a=0;a<n;a++)
s+=v[a][coloana];
return s;
}
int sl(int linie)
{
int s=0;
for(int a=0;a<m;a++)
s+=v[linie][a];
return s;
}
int ver()
{
int b;
for(b=0;b<m;b++)
if(sc(b)<0)
return 0;
for(b=0;b<n;b++)
if(sl(b)<0)
return 0;
return 1;
}
void invc(int coloana)
{
for(int a=0;a<n;a++)
v[a][coloana]=-v[a][coloana];
afisare();
}
void invl(int linie)
{
for(int a=0;a<m;a++)
v[linie][a]=-v[linie][a];
afisare();
}
int main()
{
ifstream f("flip.in");
ofstream g("flip.out");
f>>n>>m;
for(i=0;i<n;i++)
for(j=0;j<m;j++)
f>>v[i][j];
while(ver()==0)
{
for(i=0;i<n;i++)
if(sc(i)<0)
invc(i);
for(j=0;j<m;j++)
if(sl(j)<0)
invl(j);
}
for(i=0;i<n;i++)
for(j=0;j<m;j++)
p+=v[i][j];
g<<p;
return 0;
}