Pagini recente » Cod sursa (job #1008341) | Cod sursa (job #2388271) | Cod sursa (job #1809807) | Cod sursa (job #1813937) | Cod sursa (job #222850)
Cod sursa(job #222850)
#include<fstream.h>
long long n,k,ev,as,s,Ts,m,a[17][17],st[100];
ifstream in("flip.in");
ofstream out("flip.out");
void init(){
st[k]=-1;
}
int succesor(){
if(st[k]<1){
st[k]++;
return 1;
}else
return 0;
}
int valid(){
return 1;
}
int solutie(){
return k==n+m;
}
void tipar(){
int p,j;
s=0;
for(int i=1;i<=n;i++)
for(j=1,p=n+1;j<=m;j++,p++)
if(st[i] == st[p]) s += a[i][j];
else s-=a[i][j];
if(s>Ts)Ts=s;
}
void bt(){
k=1;
init();
while(k){
as=1;ev=0;
while(as && !ev){
as=succesor();
if(as) ev=valid();
}
if(as)
if(solutie()){tipar();}
else{k++;init();}
else
k--;
}
}
int main(){
int j;
in>>n>>m;
for(int i=1;i<=n;i++)
for(j=1;j<=m;j++)
in>>a[i][j];
bt();
out<<Ts;
return 0;
}