Pagini recente » Cod sursa (job #510666) | Cod sursa (job #2604938) | Cod sursa (job #299198) | Cod sursa (job #2400483) | Cod sursa (job #710319)
Cod sursa(job #710319)
//Grab Ruben Laurentiu.
#include<fstream>
using namespace std;
int n,m,a[2003][4],st[1003];
char cuv[4];
long int cuvinte;
void citire()
{
ifstream in("nrcuv.in");
int i;
in>>n>>m;
in.getline(cuv,4);
for(i=1;i<=m;i++)
{
in.getline(cuv,4);
a[i][0]=(int)cuv[0]-96;
a[i][1]=(int)cuv[2]-96;
}
in.close();
}
int bun(int k)
{
if(k==1)
return 1;
else
for(int i=1;i<=m;i++)
if(a[i][0]==st[k-1] && a[i][1]==st[k])
return 0;
return 1;
}
void bkt(int k)
{
if(k>n)
cuvinte++;
else
for(int i=1;i<=26;i++)
{
st[k]=i;
if(bun(k)==1)
bkt(k+1);
}
}
void afisare()
{
ofstream out("nrcuv.out");
out<<cuvinte%104659<<" ";
out.close();
}
int main()
{
citire();
bkt(1);
afisare();
return 0;
}