Pagini recente » Cod sursa (job #2804649) | Cod sursa (job #2604061) | Cod sursa (job #2807873) | Cod sursa (job #740214) | Cod sursa (job #34260)
Cod sursa(job #34260)
// 2 linii
#include <stdio.h>
#define in "nrcuv.in"
#define out "nrcuv.out"
#define dim 1001
int a[28][28], m[2][28];
int n, t;
int main()
{
char x, y;
FILE *fin = fopen(in,"r");
freopen(out,"w",stdout);
fscanf(fin,"%d%d",&n,&t);
fscanf(fin,"\n");
char linie[5];
for ( int i = 1; i <= t; i++ )
{
fgets(linie,5,fin);
x = linie[0];
y = linie[2];
a[(int)x-48-48][(int)y-48-48] = a[(int)y-48-48][(int)x-48-48] =1;
}
for ( int i = 1; i <= 26; i++ ) m[0][i] = 1;
for ( int i = 2; i <= n; i++ )
{
for ( int j = 1; j <= 26; j++ )
{
for ( int k = 1; k <= 26; k++ )
{
if ( !a[j][k] ) m[1][j] = (m[1][j] + m[0][k])%104659;
}
}
for ( int j = 1; j <= 26; j++ )
m[0][j] = m[1][j];
}
int v = 0;
for ( int i = 1; i <= 27; i++ )
v = ( v + m[1][i] ) %104659;
printf("%d",v%104659);
}