Pagini recente » Borderou de evaluare (job #1753669) | Cod sursa (job #2642677) | Cod sursa (job #1500706) | Cod sursa (job #733703) | Cod sursa (job #1384988)
#include<fstream>
using namespace std;
ifstream fin("flip.in");
ofstream fout("flip.out");
long long sum,n,m,i,j,a[20][20],f[20],maxim,s1,s2;
long long suma(){
sum=0;
for(i=1;i<=n;i++){
s1=0;
for(j=1;j<=m;j++){
if(f[j]==1){
s1+=(-a[i][j]);
}else{
s1+=a[i][j];
}
}
if(s1>0)
sum+=s1;
else
sum-=s1;
}
return sum;
}
void bk(){
while(f[0]!=1){
i=m;
while(f[i]==1){
f[i]=0;
i--;
}
f[i]=1;
if(maxim<suma()){
maxim=suma();
}
}
return ;
}
int main(){
fin>>n>>m;
for(i=1;i<=n;i++){
for(j=1;j<=m;j++){
fin>>a[i][j];
maxim+=a[i][j];
}
}
bk();
fout<<maxim<<"\n";
return 0;
}