Cod sursa(job #1468481)

Utilizator AndreiITCuriman Andrei AndreiIT Data 6 august 2015 10:49:54
Problema Lista lui Andrei Scor 35
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.61 kb
#include <fstream>
#include <cstring>
using namespace std;
ifstream fin("nrcuv.in");
ofstream fout("nrcuv.out");
int n, sol, mat[30][30], m;
int back_track(int l, int last)
{
    int sum=0;
    if(l == n)
        return 1;
    for(int i=1; i <= 26; ++i)
    {
        if(mat[last][i] == 0)
            sum = (sum + back_track(l+1, i)) % 104659;
    }
    return sum;
}
int main()
{
    fin>>n>>m;
    for(int i=1; i <= m; ++i)
    {
        char x, z, q;
        fin>>x>>z;
        mat[x-'a'+1][z-'a'+1] = -1;
        mat[z-'a'+1][x-'a'+1] = -1;
    }
    fout<<back_track(0, 29);
    return 0;
}