Pagini recente » Cod sursa (job #2008501) | Cod sursa (job #1648900) | Cod sursa (job #1785248) | Cod sursa (job #2196733) | Cod sursa (job #1693088)
#include <fstream>
using namespace std;
ifstream fin("flip.in");
ofstream fout("flip.out");
int maxim, n, m, M[25][25];
void bkt(int l)
{
int sum, tot=0, i, j;
if (l>n)
{
for (j=1; j<=m; j++)
{
sum=0;
for (i=1; i<=n; i++)
sum+=M[i][j];
if (sum<0)
sum *= -1;
tot+=sum;
}
if (tot>maxim)
maxim=tot;
}
else
{
for (i=1; i<=m; i++)
M[l][i] *= -1;
bkt(l+1);
for (i=1; i<=m; i++)
M[l][i] *= -1;
bkt(l+1);
}
}
int main()
{
int i, j;
fin>>n>>m;
for (i=1; i<=n; i++)
for (j=1; j<=m; j++)
{
fin>>M[i][j];
}
bkt(1);
fout<<maxim;
return 0;
}