Pagini recente » Cod sursa (job #2489605) | Cod sursa (job #2402833) | Cod sursa (job #2655721) | Cod sursa (job #1193154) | Cod sursa (job #1887803)
#include <stdio.h>
#define N 1000
#define L 150
#define mod 104659
int n,m,i,j;
long long d[N][L],v[L]; /// v['a']=cate litere pot sa stea langa 'a'
bool p[L][L];
char a,b;
int main()
{
FILE *f1,*f2;
f1=fopen("nrcuv.in","r");
f2=fopen("nrcuv.out","w");
fscanf(f1,"%d%d\n",&n,&m);
for(i='a';i<='z';i++)
{
v[i]=26;
d[1][i]=1;
}
for(i=0;i<m;i++)
{
fscanf(f1,"%c %c\n",&a,&b);
if(!p[a][b])
{
p[a][b]=p[b][a]=true;
if(a==b)
v[a]--;
else
{
v[a]--;
v[b]--;
}
}
}
for(i=2;i<=n;i++)
for(j='a';j<='z';j++)
d[i][j]=(d[i-1][j]*v[j])%mod;
long long sol=0;
for(i='a';i<='z';i++)
sol=(sol+d[n][i])%mod;
fprintf(f2,"%lld\n",sol%mod);
return 0;
}