Cod sursa(job #719788)

Utilizator misinoonisim necula misino Data 22 martie 2012 07:34:42
Problema Jocul Flip Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.83 kb
#include<fstream>
using namespace std;
ifstream f("flip.in");
ofstream g("flip.out");
int i,j,sum,m,n,maxi,s[20],v[20],a[17][17]; 
int main()
{f>>n>>m;
for(i=1;i<=n;++i)
	for(j=1;j<=m;++j)
		f>>a[i][j],a[i][0]=a[i][0]+a[i][j],a[0][j]=a[0][j]+a[i][j];
for(i=1;i<=m;++i)
	s[i]=a[0][i];
for(i=1;i<=n;++i)
	if(v[i]==1)
		for(j=1;j<=m;++j)
			s[i]=s[i]-2*a[i][j];
for(i=1;i<=n;++i)
	{if(s[i]<0)
		s[i]=-s[i];
	sum=sum+s[i];
	}
if(sum>maxi)
	maxi=sum;
while(1)
{i=1;
while(v[i]==1)
	v[i]=0,++i;
v[i]=1;
if(i>n)
	break;
for(j=1;j<=n;++j)
	if(v[j]!=0)
sum=0;
for(i=1;i<=m;++i)
	s[i]=a[0][i];
for(i=1;i<=n;++i)
	if(v[i]==1)
		for(j=1;j<=m;++j)
			s[j]=s[j]-2*a[i][j];
for(i=1;i<=n;++i)
	{if(s[i]<0)
		s[i]=-s[i];
	sum=sum+s[i];
	}
if(sum>maxi)
	maxi=sum;
}
g<<maxi<<'\n';
f.close();
g.close();
return 0;
}