Cod sursa(job #503623)

Utilizator andra23Laura Draghici andra23 Data 23 noiembrie 2010 22:08:17
Problema Jocul Flip Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.88 kb
#include<fstream>
#define maxn 20

using namespace std;

int s[2*maxn], m, n, a[maxn][maxn];
long long maxim;

void back(int k) {
    for (int i = 0; i <= 1; i++) {
        if (i == 0)
            s[k] = -1;
        else 
            s[k] = 1;
        if (k == n+m) {
            long long matrix = 0;
            for (int j = 1; j <= n; j++)
                for (int l = 1; l <= m; l++) {
                    matrix = matrix + a[j][l]*s[j]*s[n+l];    
                }
            if (matrix > maxim)
                maxim = matrix;
        }
        else 
            back(k+1);     
    }    
}

int main() {
    ifstream f("flip.in");
    ofstream g("flip.out");
    f >> n >> m;
    
    for (int i = 1; i <= n; i++)
        for (int j = 1; j <= m; j++)
            f >> a[i][j];
    
    back(1);
    
    g << maxim << '\n';
       
    return 0;
}