Cod sursa(job #2647098)
Utilizator | Esterabadeyan Hadi Gligar | Data | 3 septembrie 2020 09:40:06 |
---|---|---|---|
Problema | Jocul Flip | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva de probleme | Marime | 0.8 kb |
#include <fstream>
using namespace std;
ifstream fin("flip.in");
ofstream fout("flip.out");
const int nmax=16;
const int mmax=16;
int v[nmax+1][mmax+1];
int b[nmax+1];
int n,m,sol=-1;
void bt(int x){
if(x>n){
int sum=0;
for(int j=1;j<=m;j++){
int s=0;
for(int i=1;i<=n;i++){
s+=v[i][j]*b[i];
}
if(s<0){
s=-s;
}
sum+=s;
}
if(sol<sum){
sol=sum;
}
}else{
b[x]=-1;
bt(x+1);
b[x]=1;
bt(x+1);
}
}
int main(){
fin>>n>>m;
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
fin>>v[i][j];
}
}
bt(1);
fout<<sol<<"\n";
return 0;
}