Pagini recente » Cod sursa (job #2115045) | Cod sursa (job #1741303) | Cod sursa (job #387418) | Cod sursa (job #519653) | Cod sursa (job #1439353)
#include <fstream>
using namespace std;
ifstream f("flip.in");
ofstream g("flip.out");
int a[20][20];
short sol[40];
int n, m, i, j, s, sFin;
int maxim = -2147483647;
int main()
{
f >> n >> m;
for (i = 1; i <= n; i++)
for (j = 1; j <= m; j++)
{
f >> a[i][j];
s += a[i][j];
a[n+1][j] += a[i][j], a[i][m+1] += a[i][j];
}
i = 1;
while(!sol[1])
{
i = n+m, sFin = s;
while(sol[i] == 1)
sol[i] = 0, i--;
sol[i]++;
for (j = 1; j <= n+m; j++)
if (sol[j])
{
if (j <= n)
sFin -= 2*a[n+1][j];
else if (j > n)
sFin -= 2*a[j-n][m+1];
}
//g << sFin << " ";
if (sFin > maxim)
maxim = sFin;
}
g << maxim;
}