Cod sursa(job #2529826)

Utilizator mihai_22Mihai M mihai_22 Data 24 ianuarie 2020 01:01:26
Problema Jocul Flip Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.53 kb
#include <iostream>

#include<fstream>

using namespace std;





int x4[15], n4;

int i,j, N,M, a[17][17];

long suma2, summax , sump, sumn;



ifstream f("flip.in");

ofstream g ("flip.out");



void citire()

{

    f>>M>>N;

    for(i=0; i<M; i++)

        for(j=0; j<N; j++)

            f>>a[i][j];

}

void BackRec4(int k)

{

    int p;

    for(p=0; p<=1; p++)

    {

        x4[k]=p;

        if (k==M)

        {

            suma2=0;


            for(int w=0; w<N; w++)       /// calculare modul suma  elemente pozitive si modul de suma elemente negative, pe fiecare coloana



            {

                sumn=sump=0;             /// initializare suma el poz/neg cu 0

                for(j=0; j<M; j++)
                        if(x4[j]==1)
                            sump+=a[j][w]*(-1);
                        else
                            sump+=a[j][w];


                        if(sump>=0)       /// calcularea sumei elementelor matricei

                            suma2+=sump;

                        else

                            suma2-=sump;

            }

            if(suma2>summax)                /// actualizare suma maxima

                summax=suma2;

        }

        else BackRec4(k+1);

    }

}



int main()

{

    citire();



   for(i=0;i<M;i++)           /// initializare suma maxima

    for(j=0;j<N;j++)

    summax+=a[i][j];





    BackRec4(0);

    g<<summax;



    return 0;

}