Cod sursa(job #1768964)
| Utilizator | Data | 1 octombrie 2016 19:17:46 | |
|---|---|---|---|
| Problema | Lista lui Andrei | Scor | 15 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.57 kb |
#include <iostream>
#include <fstream>
using namespace std;
ifstream f1("nrcuv.in");
ofstream f2("nrcuv.out");
int n,m,i,j,k,M[27][27],DP[1005][26];
char l1,l2;
int main()
{
f1>>n>>m;
for(i=0;i<m;i++){
f1>>l1>>l2;
M[l1][l2]=1;
M[l2][l1]=1;
}
for(k='a';k<='z';k++){
DP[0][k]=1;
}
for(i=0;i<=n;i++){
for(j='a';j<='z';j++){
for(k='a';k<='z';k++){
if(M[j][k]==0){
DP[i][j]=DP[i][j]+DP[i-1][k];
}
}
}
}
f2<<DP[n]['z']%104659<<'\n';
return 0;
}
