Pagini recente » Cod sursa (job #1330632) | Cod sursa (job #1962957) | Cod sursa (job #84572) | Cod sursa (job #327240) | Cod sursa (job #2508757)
#include <fstream>
#define NM 20
using namespace std;
ifstream fin("flip.in");
ofstream fout("flip.out");
void bkt(int l, int c);
int suma();
void read();
int n, m, a[NM][NM],Smax;
int main()
{
read();
Smax = 0;
bkt(1,1);
fout << Smax << '\n';
return 0;
}
void read()
{
fin >> n >> m;
for (int i = 1; i <= n; i++)
for (int j = 1; j <= m; j++)
fin >> a[i][j];
}
int suma()
{
int x = 0;
for (int i = 1; i <= n; i++)
for (int j = 1; j <= m; j++)
x += a[i][j];
return x;
}
void bkt(int l, int c)
{
int S = 0;
S = suma();
if (S > Smax)
Smax = S;
if (l > n || c > m)
return ;
bkt(l + 1, c);
for (int i = 1; i <= m; i++)
a[l][i] = -a[l][i];
bkt(l + 1, c);
for (int i = 1; i <= m; i++)
a[l][i] = -a[l][i];
bkt(l, c + 1);
for (int i = 1; i <= n; i++)
a[i][c] = -a[i][c];
bkt(l, c + 1);
for (int i = 1; i <= n; i++)
a[i][c] = -a[i][c];
}