Pagini recente » Cod sursa (job #1279776) | Cod sursa (job #2674740) | Cod sursa (job #1452844) | Cod sursa (job #836552) | Cod sursa (job #63079)
Cod sursa(job #63079)
#include<fstream.h>
#include<iostream.h>
long int a[16][16],b[16][16];
long int suma(long int s[16][16],int x,int y)
{ int fi,fj;
long int fsuma=0;
//
for(fi=0;fi<x;fi++)
for(fj=0;fj<y;fj++)
fsuma+=s[fi][fj];
return fsuma;
}
int copiere(int o ,int x, int y)
{
int fi,fj;
if(o==1){
for(fi=0;fi<x;fi++)
for(fj=0;fj<y;fj++)
a[fi][fj]=b[fi][fj];
}
if(o==2)
{
for(fi=0;fi<x;fi++)
for(fj=0;fj<y;fj++)
b[fi][fj]=a[fi][fj];
}
return 0;
}
int main()
{long int stot;
int m,n,i,j,mod;
fstream fin("flip.in",ios::in);
fstream fout("flip.out",ios::out);
fin>>m;
fin>>n;
for(i=0;i<m;i++)
for(j=0;j<n;j++)
{fin>>a[i][j];
b[i][j]=a[i][j];
}
stot=suma(a,m,n);
mod=0;
while(!mod)
{mod=1;
for(i=0;i<m;i++)
{ for(j=0;j<n;j++)
{
b[i][j]=b[i][j]*-1;
}
if(suma(b,m,n)>stot) {stot=suma(b,m,n);copiere(1,m,n);mod=0;}
else copiere(2,m,n);
}
for(i=0;i<n;i++)
{ for(j=0;j<m;j++)
{
b[j][i]=b[j][i]*-1;
}
if(suma(b,m,n)>stot){stot=suma(b,m,n);copiere(1,m,n);mod=0;}
else copiere(2,m,n);
}
}
fout<<stot;
}