Pagini recente » Cod sursa (job #1319695) | Cod sursa (job #3158299) | Cod sursa (job #231082) | Cod sursa (job #1396638) | Cod sursa (job #2126901)
#include <fstream>
using namespace std;
ifstream f("flip.in");
ofstream g("flip.out");
int n,m,a[20][20],smax;
void calculareSuma(int l[],int c[]){
int s=0;
for(int i=1;i<=m;i++)
c[i]=0;
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
c[j]+=(l[i]==1)?-a[i][j]:a[i][j];
for(int i=1;i<=m;i++)
s+=(c[i]<0)?-c[i]:c[i];
if(s>smax)
smax=s;
}
void linie(int lin,int l[],int c[]){
l[lin]=1;
for(int i=lin;i<=n;i++){
calculareSuma(l,c);
linie(i+1,l,c);
}
l[lin]=0;
}
int main(){
f>>n>>m;
int l[20],c[20];
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
f>>a[i][j];
for(int i=1;i<=n;i++)
linie(i,l,c);
f.close();
g<<smax;
g.close();
return 0;
}