Cod sursa(job #2222011)
Utilizator | chowchow racheriunicolae | Data | 16 iulie 2018 12:35:52 |
---|---|---|---|
Problema | Jocul Flip | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.79 kb |
#include <bits/stdc++.h>
using namespace std;
int n,m,i,j,a[20][20],ans,st[40];
void back(int vf)
{
int i,x,y;
for(i=-1;i<=1;i+=2)
{
st[vf] = i;
if(vf==m)
{
int sum = 0;
for(x=1;x<=n;x++)
{
int s = 0;
for(y=1;y<=m;y++)
{
s += a[x][y] * st[y];
}
if(s<0) s = -s;
sum += s;
}
ans = max(ans , sum);
}
else back(vf+1);
}
}
int main()
{
ifstream fin("flip.in");
ofstream fout("flip.out");
fin >> n >> m;
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
fin >> a[i][j];
back(1);
fout<<ans <<"\n";
return 0;
}