Pagini recente » Cod sursa (job #35523) | Cod sursa (job #1615018) | Cod sursa (job #954529) | Cod sursa (job #2188079) | Cod sursa (job #1477502)
#include <fstream>
using namespace std;
char x,y;
int v[100][100],D[100][100],a,b,i,j,n,m,K,ans;
ifstream fin("nrcuv.in");
ofstream fout("nrcuv.out");
int main()
{
fin>>n>>m;
for( i = 1 ; i <= 26 ; i++ )
for( j = 1 ; j <= 26 ; j++ )
{
v[ i ][ j ] = 1;
}
for( i = 1 ; i <= 26 ; i++ )
D[ 1 ][ i ] = 1;
for( i = 1 ; i <= m ; i++ )
{
fin>>x>>y;
a = x - 'a' + 1;
b = y - 'a' + 1;
v[ a ][ b ] = 0;
v[ b ][ a ] = 0;
}
for( K = 2 ; K <= n ; K++ )
{
for( i = 1 ; i <= 26 ; i++ )
for( j = 1 ; j <= 26 ; j++ )
{
if( v[ i ][ j ] == 1 )
{
D[ K ][ i ] += D[ K - 1 ][ j ];
D[ K ][ i ] = D[ K ][ i ] % 104659;
}
}
}
for( i = 1 ; i <= 26 ; i++ )
{
ans+=D[ n ][ i ];
ans = ans % 104659;
}
fout<<ans;
return 0;
}