Pagini recente » ojiiiii | Cod sursa (job #557749) | Cod sursa (job #2658481) | Cod sursa (job #2723094) | Cod sursa (job #1419165)
#include <iostream>
#include <fstream>
#define NMax 1001
#define MOD 104659
using namespace std;
bool A[28][28];
int B[NMax][28],N,M;
char x,y;
ifstream g("nrcuv.in");
ofstream f("nrcuv.out");
void Citire()
{
g>>N>>M;
for(int i=1;i<=M;i++)
{
g>>x>>y;
A[x-'a'+1][y-'a'+1]=true;
A[y-'a'+1][x-'a'+1]=true;
}
}
int Solve()
{
int Sum=0;
for(int i=1;i<='z'-'a'+1;i++)
B[1][i]=1;
for(int k=2;k<=N;k++)
{
for(int i=1;i<='z'-'a'+1;i++)
for(int j=1;j<='z'-'a'+1;j++)
if(A[i][j]==0)
B[k][i]=(B[k][i]+B[k-1][j])%MOD;
}
for(int i=1;i<='z'-'a'+1;i++)
Sum=(Sum+B[N][i])%MOD;
return Sum;
}
int main()
{
Citire();
f<<Solve();
}