Cod sursa(job #2555584)

Utilizator stefan333Alexandru David stefan333 Data 24 februarie 2020 09:59:09
Problema Jocul Flip Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.5 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream f ("flip.in");
ofstream g ("flip.out");

void modifica(int i,int m,int a[100][100])
{ int j;

    for( j=1;j<=m;j++)
    a[i][j]=a[i][j]*-1;

}
void modifica2(int j,int n,int a[100][100])
{ int i;

    for( i=1;i<=n;i++)
    a[i][j]=a[i][j]*-1;

}

void citire(int n,int m,int a[100][100])
{
int i,j;
    for(i=1;i<=n;i++)
    for(j=1;j<=m;j++)
    f>>a[i][j];

}
int sums (int a[100][100],int n,int m)
{
    int i,j;
      int suna=0;
     for(i=1;i<=n;i++)
        for(j=1;j<=m;j++)
            suna+=a[i][j];
    return suna;
}
void reset(int b[100][100],int a[100][100],int n,int m)
{int i,j;
    for(i=1;i<=n;i++)
    for(j=1;j<=m;j++)
     a[i][j]=b[i][j];
}
int programprincipal(int a[100][100],int n,int m,int b[100][100])
{
    int i,j,rez;int c[100][100];
     int maxabsol;
     maxabsol=sums(a,n,m);
     for(i=1;i<=n;i++)
       {   reset(b,a,n,m);
           modifica(i,m,a);
           reset(a,c,n,m);
        for(j=1;j<=m;j++)
        {  reset(c,a,n,m);
           modifica2(j,n,a);
            rez=sums(a,n,m);
            if(rez>maxabsol)
            {
                maxabsol=rez;

            }

        }
       }
       return maxabsol;
}


int main()
{
    int n,m,i,j;
    f>>n;
    f>>m;
    int a[100][100],b[100][100];
   citire(n,m,a);
   for(i=1;i<=n;i++)
    for(j=1;j<=m;j++)
     b[i][j]=a[i][j];

        g<<programprincipal(a,n,m,b);
    return 0;
}