Cod sursa(job #2177121)
Utilizator | Andrei Mihailescu Andrei2000 | Data | 18 martie 2018 12:54:35 |
---|---|---|---|
Problema | Jocul Flip | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.64 kb |
#include <bits/stdc++.h>
using namespace std;
ifstream fin ("flip.in");
ofstream fout ("flip.out");
int n,m,v[18][18],vv[18],sum=0;
void bck(int q){
if(q==m+1){
int tsum=0;
for(int i=1;i<=n;++i)tsum+=abs(vv[i]);
sum=max(sum,tsum);
return;
}
bck(q+1);
for(int i=1;i<=n;++i)
vv[i]-=2*v[i][q];
bck(q+1);
for(int i=1;i<=n;++i)
vv[i]+=2*v[i][q];
}
int main()
{
fin>>n>>m;
for(int i=1;i<=n;++i)
for(int j=1;j<=m;++j){
fin>>v[i][j];
vv[i]+=v[i][j];
}
bck(1);
fout<<sum<<'\n';
return 0;
}