Pagini recente » Borderou de evaluare (job #162724) | Cod sursa (job #441903) | Borderou de evaluare (job #1004265) | Cod sursa (job #2587422) | Cod sursa (job #3165905)
#include <fstream>
#include <climits>
#define mod 104659
using namespace std;
ifstream fin("nrcuv.in");
ofstream fout("nrcuv.out");
int n,m,fr[30][30],d[1001][30],s;
char x,y;
int main()
{
fin>>n>>m;
for(int i=1;i<=m;i++)
{
fin>>x>>y;
fr[x-'a'+1][y-'a'+1]=1;
fr[y-'a'+1][x-'a'+1]=1;
}
for(int i=1;i<=26;i++)
d[1][i]=1;
for(int i=2;i<=n;i++)
{
for(int x1=1;x1<=26;x1++)
{
for(int x2=1;x2<=26;x2++)
{
if(fr[x1][x2]==0)
d[i][x2]=(d[i][x2]+d[i-1][x1])%mod;
}
}
}
for(int i=1;i<=26;i++){
s=(s+d[n][i])%mod;
}
fout<<s;
return 0;
}