Pagini recente » Cod sursa (job #3169423) | Cod sursa (job #3266611) | Borderou de evaluare (job #2002046) | Cod sursa (job #2427287) | Cod sursa (job #309179)
Cod sursa(job #309179)
#include <iostream>
#include <fstream>
#define ABS(a) (((a)>0)?(a):(-(a)))
using namespace std;
const int v[3] = {0,1,-1};
long suma = 0;
long a[17][17];
int mult[17];
int m,n;
void sum()
{
long sum1 = 0, sum2 = 0;
for (int i = 1; i<=m; i++)
{
sum1 = 0;
for (int j = 1; j<=n; j++)
sum1+= mult[j] * a[j][i];
sum2+= ABS(sum1);
}
if (sum2>suma)
suma = sum2;
}
void back(int k)
{
if (k>n)
sum();
else
for (int i=1;i<=2;i++)
{
mult[k] = v[i];
back(k+1);
}
}
int main()
{
ifstream f("flip.in");
f >> n >> m;
for (int i=1;i<=n;i++)
for (int j=1;j<=m;j++)
f >> a[i][j];
f.close();
back(1);
ofstream g("flip.out");
g << suma << endl;
g.close();
return 0;
}