Cod sursa(job #1160949)

Utilizator RauliKMarian Raul RauliK Data 30 martie 2014 22:07:23
Problema Factorial Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.39 kb
#include <fstream>
#include <math.h>
using namespace std;
int main()
{
    int a, n, m, i, j, k, K, l, L, x[16][16];
    k = 0;
    K = 0;
    ifstream fin("flip.in");
    fin >> n >> m;
    if ( n > 16 || m > 16 )
    {
         return 0;
    }
    else
    {
        for ( i = 1; i <= n; i++ )
        {
            for ( j = 1; j <= m; j++ )
            {
                fin >> x[i][j];
                k = x[i][j] + k;
            }
        }
        fin.close();
        for ( L = 0; L <= pow(2,n) - 1; L++ )
        {
            for ( l = 0; l <= pow(2,m) - 1; l++ )
            {
                for ( i = 1; i <= n; i++ )
                {
                    for ( j = 1; j <= m; j++ )
                    {
                        a = x[i][j];
                        if ( L / (int)pow(2,i) % 2 == 1 )
                        {
                             a = -a;
                        }
                        if ( l / (int)pow(2,j) % 2 == 1 )
                        {
                             a = -a;
                        }
                        K += a;
                    }
                }
                if ( K > k )
                {
                     k = K;
                }
                K = 0;
            }
        }
        ofstream fout("flip.out");
        fout << k;
        fout.close();
        return 0;
    }
}