Pagini recente » Cod sursa (job #2944982) | Profil pregoli | Cod sursa (job #171250)
Cod sursa(job #171250)
//Flip
#include <fstream>
using namespace std;
ifstream fin("flip.in");
ofstream fout("flip.out");
int A[17][17],n,m,VS[17],A2[17][17],A3[17][17],Max;
void flip(int k){
int i,j;
if (k-1==n){
for (i=1;i<=n;i++)
for (j=1;j<=m;j++){
A2[i][j]=A[i][j]*VS[i];
A2[i][j]+=A2[i-1][j];
}
for (i=1;i<=m;i++){
if (A2[n][i]<0) A2[n][i]*=-1;
A2[n][i]+=A2[n][i-1];
}
if (A2[n][m]>Max) Max=A2[n][m];
} else {
VS[k]=1;
flip(k+1);
VS[k]=-1;
flip(k+1);
}
}
int main(){
int i,j;
fin>>n>>m;
for (i=1;i<=n;i++)
for (j=1;j<=m;j++)
fin>>A[i][j];
flip(1);
fout<<Max;
fout.close();
}