Pagini recente » Cod sursa (job #3267434) | Cod sursa (job #579574) | Cod sursa (job #1381406) | Cod sursa (job #3293486) | Cod sursa (job #648827)
Cod sursa(job #648827)
#include<stdio.h>
#include<vector>
#include<fstream>
using namespace std;
int vecini[125][125];
long int dp[1000][125];
int main()
{
char c1,c2;
int l1,l2,i,suma=0,N,M;
ifstream f("nrcuv.in");
ofstream g("nrcuv.out");
f>>N>>M;
for(i=1;i<=M;i++)
{
f>>c1>>c2;
vecini[(int)c1][(int)c2]=1;
vecini[(int)c2][(int)c1]=1;
}
for(i='a';i<='z';i++)
dp[1][i]=1;
for(i=2;i<=N;i++)
for(l1='a';l1<='z';l1++)
for(l2='a';l2<='z';l2++)
if(vecini[l1][l2]==0)
dp[i][l2]=(dp[i-1][l1]+ (dp[i][l2]%104569) )%104659;
for(i='a';i<='z';i++)
suma=( (suma%104569)+ (dp[N][i]%104569) )%104659;
g<<suma;
return 0;
}