Pagini recente » Cod sursa (job #1050401) | Cod sursa (job #1690971) | Rating Cuc Diana (dia20) | Cod sursa (job #2316486) | Cod sursa (job #1258898)
#include<fstream>
#include<iostream>
using namespace std;
ifstream in("nrcuv.in");
ofstream out("nrcuv.out");
const int NMAX = 1005;
const int MOD = 104659;
long long v[NMAX][30],n,m,ok[30][30];
void read()
{
char a,b;
in>>n>>m;
for(int i = 1 ; i <= m ; i++){
in>>a>>b;
ok[a-96][b-96] = 1;
ok[b-96][a-96] = 1;
}
in.close();
}
void solve()
{
for(int i = 1 ; i <= 26 ; i++)
v[1][i] = v[1][i-1] + 1;
for(int i = 2 ; i <= n ; i++)
for(int j = 1 ; j <= 26 ; j++)
{
v[i][j] = (v[i][j-1]+v[i-1][26])%MOD;
for(int k = 1 ; k <= 26 ; k++)
if(ok[k][j]){
v[i][j] = (v[i][j] - (v[i-1][k]-v[i-1][k-1])%MOD)%MOD;
}
}
out<<v[n][26]%MOD;
}
int main()
{
read();
solve();
return 0;
}