Pagini recente » Cod sursa (job #2788725) | Cod sursa (job #2465535) | Cod sursa (job #1270916) | Cod sursa (job #1283682) | Cod sursa (job #2360682)
#include <fstream>
using namespace std;
ifstream in("flip.in");
ofstream out("flip.out");
int n,m,a[17][17],i,j,stiva[17],maxx;
void back(int k)
{
if (k==n+1)
{
int suma_matrice=0;
for (int i=1;i<=m;++i)
{
int suma_coloana=0;
for (int j=1;j<=n;++j)
{
if (stiva[j]==1)
suma_coloana+=(a[j][i]*(-1));
else suma_coloana+=a[j][i];
}
if (suma_coloana<0) suma_matrice+=(suma_coloana*(-1)); /// flip la coloana
else suma_matrice+=suma_coloana;
}
maxx=max(maxx,suma_matrice);
}
else
{
stiva[k]=1;
back(k+1);
stiva[k]=0;
back(k+1);
}
}
int main()
{
in>>n>>m;
for (i=1;i<=n;++i)
{
for (j=1;j<=m;++j)
in>>a[i][j];
}
back(1);
out<<maxx;
}