Pagini recente » Cod sursa (job #3222361) | Cod sursa (job #2302503) | Cod sursa (job #1361437) | Cod sursa (job #2555854) | Cod sursa (job #719788)
Cod sursa(job #719788)
#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;
}