Pagini recente » Cod sursa (job #59610) | Cod sursa (job #2124210) | Cod sursa (job #51138) | Cod sursa (job #515610) | Cod sursa (job #3281987)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("nrcuv.in");
ofstream fout("nrcuv.out");
int d[206][2006],dp[10005][10005];
int n,m;
char ch1,ch2;
int main()
{
fin>>n>>m;
while(m--)
{
fin>>ch1>>ch2;
d[ch1 - 'a' + 1][ch2 - 'a' + 1] = d[ch2 - 'a' + 1][ch1 - 'a' + 1] = 1;
}
for(int i=1;i<=26;i++)
dp[1][i]=1;
for(int i=2;i<=n;i++)
for(int j=1;j<=26;j++)
{
for(int k=1;k<=26;k++)
if(d[j][k]==0 && d[k][j]==0)
{
dp[i][j]=(dp[i][j]+dp[i-1][k]) % 104659;
}
}
int sum=0;
for(int i=1;i<=26;i++)
sum=(sum+dp[n][i])% 104659;
fout<<sum;
}