Cod sursa(job #2127769)

Utilizator gladiatoriglandrei123 gladiatorigl Data 10 februarie 2018 23:41:15
Problema Jocul Flip Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.92 kb
#include <iostream>
#include <fstream>
#define M 17
using namespace std;
int st[M],n,m,smax,a[M][M];
ofstream g("flip.out");
void citire()
{
    int i,j;
    ifstream f("flip.in");
    f>>n>>m;
    for(i=1; i<=n; i++)
        for(j=1; j<=m; j++)
            f>>a[i][j];
    f.close();
}
void afisare()
{
    int i,s=0;
    for(i=1; i<=n; i++)
    {
        cout<<i<<" "<<a[i][st[i]]<<",";
        s=s+a[i][st[i]];
    }
    cout<<"Cu suma: "<<s;
    cout<<endl;
    if(s>smax)
        smax=s;
}
int Valid(int k)
{
    int i;
    for(i=1; i<=k-1; i++)
        if(st[k]==st[i])
            return 0;
    return 1;
}
void Back(int k)
{
    int i;
    for(i=1; i<=n; i++)
    {
        st[k]=i;
        if(Valid(k)==1)
            if(k==n)
                afisare();
            else
                Back(k+1);
    }
}
int main()
{
    citire();
    Back(1);
    g<<smax;
    return 0;
}