Pagini recente » Cod sursa (job #1052517) | Cod sursa (job #558751) | Cod sursa (job #2843130) | Cod sursa (job #1778487) | Cod sursa (job #1815162)
#include <cstdio>
#include <cstring>
using namespace std;
FILE *f, *g;
int n, m, mx, a[17][17], col[17], lin[17], s, bkStk[33], k;
void readFile()
{
f = fopen("flip.in", "r");
fscanf(f, "%d%d", &n, &m);
int i, j;
for(i = 1; i <= n; i ++)
{
for(j = 1; j <= m; j ++)
fscanf(f, "%d", &a[i][j]), col[j] += a[i][j], lin[i] += a[i][j], s += a[i][j];
}
fclose(f);
}
void calc(int col[])
{
int i, j;
for(i = 1; i <= n; i ++)
for(j = 1; j <= m; j ++)
col[j] += a[i][j];
}
void sol(int n, int lin[], int m, int col[])
{
int i, rez = s, j;
for(i = 1; i <= n; i ++)
{
if(lin[i] < 0)
{
for(j = 1; j <= m; j ++)
a[i][j] = -a[i][j], rez += 2 * a[i][j];
}
}
int sum;
for(i = 1; i <= m; i ++)
{
sum = 0;
for(j = 1; j <= n; j ++)
sum += a[j][i];
if(sum < 0)
rez -= 2 * sum;
}
if(rez > mx)
mx = rez;
}
void solve()
{
sol(n, lin, m, col);
sol(m, col, n, lin);
}
void printFile()
{
g = fopen("flip.out", "w");
fprintf(g, "%d\n", mx);
fclose(g);
}
int main()
{
readFile();
solve();
printFile();
return 0;
}