Cod sursa(job #138579)

Utilizator ColdVoinea Catalin Cold Data 18 februarie 2008 21:18:46
Problema Jocul Flip Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.93 kb
#include <fstream>
#include <math>

using namespace std;

long ma[17][17],v[100],x[100],n,m,i,j,sumal,sumac,sumam,minc,minl,posc,posl;
fstream f("flip.in",ios::in);
fstream t("flip.out",ios::out);

int citire ()
{
f>>n;
f>>m;
for (i=0;i<n;i++)
for (j=0;j<m;j++)
{f>>ma[i][j];}
return 0;
}
int sume ()
{
for (i=0;i<n;i++)
{
sumal=0;
for (j=0;j<m;j++)
{sumal=sumal+ma[i][j];}
v[i]=sumal;
}
for (j=0;j<m;j++)
{
sumac=0;
for (i=0;i<n;i++)
{sumac=sumac+ma[i][j];}
x[j]=sumac;
}
return 0;
}
int flip ()
{
for (i=0;i<n;i++)
if (minl>v[i])
{minl=v[i];posl=i;}
for (j=0;j<m;j++)
if (minc>x[j])
{minc=x[j];posc=j;}
for (j=0;j<=m;j++)
{ma[posl][j]=ma[posl][j]*(-1);}
for (i=0;i<=n;i++)
{ma[i][posc]=ma[i][posc]*(-1);}
return 0;
}
int rez ()
{
for (i=0;i<n;i++)
for (j=0;j<m;j++)
sumam=sumam+ma[i][j];
t<<sumam;
t.close ();
return 0;
}
int main ()
{
citire ();
sume ();
flip ();
rez ();
return 0;
}