Cod sursa(job #849423)

Utilizator unincepatorDigi Cazan unincepator Data 6 ianuarie 2013 21:43:55
Problema Jocul Flip Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.03 kb
#include<fstream>
#include<vector>
#include<iostream>
using namespace std;
long flip_and_sum(vector<vector<long> > table,int row ,int col,int n,int m)
{
    int i,j;
    for(i = 0;i<n;++i)
    {
         if(i!=row)
            table[i][col]*= -1;
    }
    for(i=0;i<m;++i)
    {
            table[row][i]*= -1;
    }

    long s = 0L;
    for(i = 0;i<n;++i)
        for(j=0;j<m;++j)
            s+=table[i][j];
    return s;
}

int main()
{

    int n,m,i,j;
    long max_sum=0L,temp;
    ifstream fin("flip.in");
    fin>>n>>m;
    vector<vector<long> > table(n,vector<long>(m,0));
    for(i=0;i<n;++i)
        for(j=0;j<m;++j)
                fin>>table[i][j];


    max_sum = flip_and_sum(table,0,0,n,m);
    for(i=0;i<n;++i)
        for(j=0;j<m;++j)
           {
               temp=flip_and_sum(table,i,j,n,m);
                if (temp > max_sum)
                    max_sum = temp;
           }
    ofstream fout("flip.out");
    fout<<max_sum;
    fin.close();
    fout.close();
    return 0;
}