Pagini recente » Cod sursa (job #509419) | Cod sursa (job #88128) | Cod sursa (job #2560540) | Cod sursa (job #2108251) | Cod sursa (job #703077)
Cod sursa(job #703077)
#include <fstream>
#define N 1010
#define M 104659
using namespace std;
ifstream f("nrcuv.in");
ofstream g("nrcuv.out");
bool fol[27][27];
int cat[N][27],n,i,j,m,k;
char a,b;
int main() {
f >> n >> m;
for (k=1;k<=m;k++) {
f >> a >> b;
fol[a-96][b-96]=fol[b-96][a-96]=1;
}
for (i=1;i<=n;i++)
for (j=1;j<=26;j++) {
if (i==1) {cat[i][j]=1;continue;}
for (k=1;k<=26;k++)
if (!fol[j][k])
cat[i][j]=(cat[i][j]+cat[i-1][k])%M;
}
for (j=2;j<=26;j++)
cat[n][1]=(cat[n][1]+cat[n][j])%M;
g << cat[n][1] << '\n';
f.close();g.close();
return 0;
}