Cod sursa(job #3342493)

Utilizator cristiz123456Zoescu Cristian cristiz123456 Data 24 februarie 2026 14:41:51
Problema Jocul Flip Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.24 kb
#include <fstream>

using namespace std;

ifstream cin("flip.in");
ofstream cout("flip.out");
const int N = 16;
int v[N][N];

void flip(int p, int n)
{
    int i;
    for(i = 0; i < n; i++)
    {
        v[i][p] *= (-1);
    }
}
int main()
{

    int n, m, p, i, j, x, ma = 0, sum, sumgob;
    cin >> n >> m;
    for(i = 0; i < n; i++)
    {
        for(j = 0; j < m; j++)
        {
            cin >> v[i][j];
        }
    }
    x = 0;
    while(x < 1 << m)
    {
        p = 0;
        while(p < m)
        {
            if((x >> p) & 1 == 1)
            {
                flip(p, n);
            }
            p++;
        }
        sumgob = 0;
        for(i = 0; i < n; i++)
        {
            sum = 0;
            for(j = 0; j < m; j++)
            {
                sum += v[i][j];
            }
            if(sum < 0)
            {
                sumgob += sum * (-1);
            }
            else sumgob += sum;
        }
        if(sumgob > ma)
            ma = sumgob;
        p = 0;
        while(p < m)
        {
            if((x >> p) & 1 == 1)
            {
                flip(p, n);
            }
            p++;
        }
        x++;
    }
    cout << ma;
    return 0;
}