Pagini recente » Cod sursa (job #2567972) | Cod sursa (job #1499865) | Cod sursa (job #839253) | Cod sursa (job #2496838) | Cod sursa (job #1769626)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("nrcuv.in");
ofstream fout("nrcuv.out");
int n,m,i,j,k,A[30][30],DP[1005][30],S;
void Read()
{
char l1,l2;
fin>>n>>m;
for(i=1;i<=m;i++)
{
fin>>l1>>l2;
A[l1-96][l2-96]=1;
A[l2-96][l1-96]=1;
}
}
void Solve()
{
for(i='a';i<='z';i++)
DP[1][i]=1;
for(i=2;i<=n;i++)
for(j=1;j<=26;j++)
for(k=1;k<=26;k++)
if(A[j][k]==0)
{
DP[i][j]=(DP[i][j]+DP[i-1][k])%104659;
}
}
void Print()
{
for(i=1;i<=26;i++)
S=(S+DP[n][i])%104659;
fout<<S;
}
int main()
{
Read();
Solve();
Print();
return 0;
}