Cod sursa(job #2051910)

Utilizator Dobricean_IoanDobricean Ionut Dobricean_Ioan Data 29 octombrie 2017 18:27:52
Problema Jocul Flip Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.8 kb
#include <fstream>
#include <algorithm>
using namespace std;
ifstream fin ("flip.in");
ofstream fout ("flip.out");
void  back(int k , int w);
const int Dim = 17;
int A[Dim][Dim] , n, m , ma = -1000000 , s,Sl[Dim] , Sc[Dim];
bool UseL[Dim] = {0}, UseC[Dim] = {0};

int main() {
	fin >> n >> m;
	for(int i = 1; i <= n; i++)
		for(int j = 1; j <= m; j++)
			fin >> A[i][j] , s += A[i][j];
for(int i = 1; i <= n; i++)
	for(int j = 1; j <= m; j++) 
		Sl[i] += A[i][j];
for(int j = 1; j <= m; j++)
	for(int i = 1; i <= n; i++) 
		Sc[j] += A[i][j];	
back(0,0);
fout << ma;
 }
 
 void  back(int k , int w) {
	ma = max(s,ma);
	for(int i = k + 1; i <= n; i++) {
		int aux = s;
		s += -2 * Sl[i];
		back(i , w);
		s = aux;
		}
	
	for(int j = w + 1; j <= m; j++) {
		int aux = s;
		s += -2*Sc[j];
		back(k,j);
		s = aux;
		}	
}