Pagini recente » Cod sursa (job #2748466) | Cod sursa (job #2110184) | Cod sursa (job #425843) | Cod sursa (job #330549) | Cod sursa (job #2683579)
/**
https://infoarena.ro/problema/nrcuv
*/
#include <fstream>
using namespace std;
ifstream fin("nrcuv.in");
ofstream fout("nrcuv.out");
int n,m,dp[1001]['z'-'a'+1],a['z'-'a'+1]['z'-'a'+1],s;
int main()
{
char x,y;
fin>>n>>m;
while(m)
{
fin>>x>>y;
a[x-'a'+1][y-'a'+1]=1;
a[y-'a'+1][x-'a'+1]=1;
m--;
}
for(int i=1;i<='z'-'a'+1;i++)
{
dp[1][i]=1;
}
for(int i=2;i<=n;i++)
{
for(int j=1;j<='z'-'a'+1;j++)
{
for(int k=1;k<='z'-'a'+1;k++)
{
if(a[j][k]!=1)
{
dp[i][j]=(dp[i][j]+dp[i-1][k])%104659;
}
}
}
}
for(int i=1;i<='z'-'a'+1;i++)
{
s=(s+dp[n][i])%104659;
}
fout<<s;
return 0;
}