Pagini recente » Cod sursa (job #1149421) | Cod sursa (job #2254755) | Cod sursa (job #1099866) | Cod sursa (job #112403) | Cod sursa (job #2086178)
#include <iostream>
#include <fstream>
#include <cstring>
using namespace std;
ifstream f("nrcuv.in");
ofstream g("nrcuv.out");
const int N=2001,M=104659;
bool a[27][27];
int d[N][27];
int main()
{
int n,m,i,j,k,s=0;
char x,y;
f>>n>>m;
for (i=1; i<=m; i++)
{
f>>x;
f>>y;
a[x-'a'+1][y-'a'+1]=true;
a[y-'a'+1][x-'a'+1]=true;
}
for (i=1; i<=n; i++)
{
for (j=1; j<=26; j++)
{
if (i==1)
d[i][j]=1;
else
{
for (k=1; k<=26; k++)
if (!a[k][j])
{
d[i][j]+=d[i-1][k];
d[i][j]%=M;
}
}
}
}
for (i=1; i<=26; i++)
{
s+=d[n][i];
s%=M;
}
g<<s;
return 0;
}