Pagini recente » Cod sursa (job #2925957) | Cod sursa (job #525721) | Cod sursa (job #953215) | Cod sursa (job #2659805) | Cod sursa (job #2207821)
//
// main.cpp
// flip
//
// Created by адин on 25.05.2018.
// Copyright © 2018 Ionitas. All rights reserved.
//
#include <fstream>
using namespace std;
int main(int argc, const char * argv[]) {
ifstream fin("flip.in");
ofstream fout("flip.out");
long long n,m,a[100000][100000],sum = 0,row[100000],col[100000];
fin>>n>>m;
for (int i(1); i<=n; i++)
for (int j(1);j<=m;j++)
fin>>a[i][j];
//suma nr poz and negative rows on table 1..n; row
for(long long i(1); i<=n; i++ ){
row[i]=0;
for(long long r,poz(0),neg(0),j(1); j<=m; j++ ){
r=a[i][j];
poz += r;//sum pozitive
neg-= r ; //sum negative
row[i]= max(poz,neg);//maxim
}
}
//suma nr poz si negative colum on table 1..m; col
for (long long j(1); j<=m; j++){
col[j]=0;
for (long long poz(0),neg(0),r,i(1); i<=n; i++){
r=a[i][j];
poz += r; //sum pozitive
neg -= r; // sum negative
col[j] = max(poz,neg);//maxim
}
}
long long sum1=0;
for(long long i(1);i<=n;i++)
for(long long j(1);j<=m;j++)
sum+=a[i][j];
for(long long i(1);i<=n;i++) sum1+=row[i];
for(long long i(1);i<=m;i++) sum1+=col[i];
fout<<sum1-sum<< endl;
return 0;
}