Cod sursa(job #1518100)

Utilizator cristiancCristian cristianc Data 5 noiembrie 2015 15:05:22
Problema Jocul Flip Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.72 kb
#include <fstream>
#include <cmath>
using namespace std;
int main()
{
    ifstream ii ("flip.in");
    ofstream oo ("flip.out");
    unsigned short n, m, i, j, flag;
    ii >> n >> m;  int a[n][m];  int puteri[n+1];
    long long sum = 0, s = 0, cl = 0;
    for (i = 0; i < n; puteri[i] = pow(2, i), i++)
        for (j = 0; j < m; j++)
            ii >> a[i][j];
    puteri[n] = pow(2, n);
    for (flag = 0; flag < puteri[n]; flag++, s = 0)
    {
        for (j = 0; j < m; j++, cl = 0)
        {
            for (i = 0; i < n; i++)
                cl += a[i][j] * (flag & (unsigned short)(puteri[i]) ? 1 : -1);
            s += (cl > 0 ? cl : -cl);
        }
        if (s > sum) sum = s;
    }
    oo << sum;
}