Pagini recente » Cod sursa (job #246680) | Cod sursa (job #1882844) | Cod sursa (job #2105693) | nume | Cod sursa (job #1729159)
#include <stdio.h>
#include <stdlib.h>
int a[17][17];
int s;
void coloana(int n,int m,int k,FILE *pg)
{
int s1=0,s2=0,i;
for (i=1; i<=n; i++)
{
s1+=a[i][k];
s2+=-a[i][k];
}
if (s1>s2)
{
s+=s1;
}
else
{
s+=s2;
for (i=1; i<=n; i++)
a[i][k]=-a[i][k];
}
if (k==m)
{
fprintf(pg,"%d",s);
}
else
coloana(n,m,k+1,pg);
}
void linie(int n,int m,int k,FILE *pg)
{
int s1=0,s2=0,i;
for (i=1; i<=m; i++)
{s1+=a[k][i];
s2+=-a[k][i];}
if (s1<s2)
{
for (i=1; i<=m; i++)
a[k][i]=-a[k][i];
}
if (k==n)
{
coloana(n,m,1,pg);
}
else
linie(n,m,k+1,pg);
}
int main()
{
FILE *pf,*pg;
pf=fopen("flip.in","r");
pg=fopen("flip.out","w");
int m,n;
fscanf(pf,"%d %d",&n,&m);
int i,j;
for (i=1; i<=n; i++)
for (j=1; j<=m; j++)
fscanf(pf,"%d ",&a[i][j]);
linie(n,m,1,pg);
return 0;
}