Cod sursa(job #846032)

Utilizator suzanicaSuzanica Mihu suzanica Data 1 ianuarie 2013 12:50:57
Problema Lista lui Andrei Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.73 kb
#include<fstream>
#define mod 104659
using namespace std;
int n,m,i,j,k;
unsigned long long a[1001][30],nr;
char x,y,s;
bool uz[30][30];
int main()
{
    ifstream f("nrcuv.in");
    freopen("nrcuv.out","w",stdout);

    f>>n>>m;
    f.get();
    for(i=1;i<=m;++i)
    {

        f>>x>>y;
        uz[x-'a'][y-'a']=uz[y-'a'][x-'a']=1;
    }


    for(i=0;i<26;++i)
        a[1][i]=1;

    for(i=2;i<=n;++i)
        for(j=0;j<26;++j)
            for(k=0;k<26;++k)
                if(!uz[k][j])
                    a[i][j]=(a[i][j]+a[i-1][k])%mod;
                nr=0;
                for(i=0;i<26;++i)
                    nr=(nr+a[n][i])%mod;

                printf("%lld",nr);

                return 0;
}