Pagini recente » Cod sursa (job #2802701) | Cod sursa (job #2041413) | Cod sursa (job #463081) | Cod sursa (job #567309) | Cod sursa (job #2668790)
#include <bits/stdc++.h>
using namespace std;
bitset <150> M[150];
int d[1005][150];
int main()
{
ifstream f("nrcuv.in");
ofstream g("nrcuv.out");
int n,m;
f>>n>>m;
while(m--)
{
char x,y;
f>>x>>y;
M[x][y]=M[y][x]=true;
}
for(int i='a';i<='z';i++)
d[0][i]=1;
for(int i=1;i<n;i++)
for(int j='a';j<='z';j++)
for(int k='a';k<='z';k++)
if(!M[j][k]&&!M[k][j])
d[i][j]=(d[i][j]+d[i-1][k])%104659;
int64_t p=0;
for(int i='a';i<='z';i++)
p=(p+d[n-1][i])%104659;
g<<p;
return 0;
}