Cod sursa(job #1510494)

Utilizator MateiGramaGrama Matei MateiGrama Data 25 octombrie 2015 09:14:13
Problema Jocul Flip Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.89 kb
#include <iostream>
#include <fstream>
using namespace std;

ifstream f("flip.in");
ofstream g("flip.out");

int n,m,a[17][17],sol[33];
long long smax;

void citire (){
    f>>n>>m;
    for(int i=1; i<=n ; i++)
        for(int j=1; j<=m ; j++)
            f>>a[i][j];
}
void afisare(){
  for(int i=1;i<n+m;i++)
    cout<<sol[i];
  cout<<'\n';
}
void suma(){
  long long s=0;
  for(int i=1;i<=n;i++)
    for(int j=1;j<=m;j++){
      if(sol[i]){
        if(sol[n+j])
          s+=a[i][j];
        else
          s-=a[i][j];
      }
      else{
        if(sol[n+j])
          s-=a[i][j];
        else
          s+=a[i][j];
      }
    }
  if(s>smax)
    smax=s;
}
void bkt(int p){
  if(p==n+m+1)
    suma();
  else{
    sol[p]=0;
      bkt(p+1);
    sol[p]=1;
      bkt(p+1);
  }
}


int main()
{
    citire();
    bkt(1);
    g<<smax;
    return 0;
}