Cod sursa(job #795721)
Utilizator | Denis Mita Kira96 | Data | 9 octombrie 2012 15:19:37 |
---|---|---|---|
Problema | Lista lui Andrei | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.48 kb |
#include<fstream>
using namespace std;
bool nu[30][30];
long nrc[1001][30],l,i,n,m,j,sum=0;
char l1,l2;
int main()
{
ifstream f("nrcuv.in");
ofstream g("nrcuv.out");
f>>n>>m;
for(i=0;i<m;i++)
{
f>>l1>>l2;
nu[l1-'a'][l2-'a']=1;
nu[l2-'a'][l1-'a']=1;
}
for(i=0;i<26;i++)
nrc[0][i]=1;
for(l=0;l<n;l++)
{
for(i=0;i<26;i++)
for(j=0;j<26;j++)
nrc[l+1][j]+=(nrc[l][i]*(1-nu[i][j]))%104659;
}
n--;
for(i=0;i<26;i++)
sum=(sum+(nrc[n][i]))%104659;
g<<sum;
return 0;
}