Pagini recente » Rating Edy Stefanita (edy225) | Cod sursa (job #2086181)
#include <fstream>
using namespace std;
ifstream cin ("nrcuv.in");
ofstream cout ("nrcuv.out");
int c[30][30],a[30],b[30],n,m;
void read ()
{ char z,w;
cin>>n>>m;
for(int i=1;i<=m;i++)
{
cin>>z>>w;
c[z-'a'+1][w-'a'+1]=1;
c[w-'a'+1][z-'a'+1]=1;
}
}
void solve ()
{
for(int i='a';i<='z';i++) a[i-'a'+1]=1;
for(int i=2;i<=n;i++)
{
if(i%2==0)
{
for(int j='a';j<='z';j++) {
for(int u='a';u<='z';u++)
if(c[j-'a'+1][u-'a'+1]==0)
b[u-'a'+1]=(b[u-'a'+1]+a[j-'a'+1])%104659; a[j-'a'+1]=0; }
}
else
{
for(int j='a';j<='z';j++) {
for(int u='a';u<='z';u++)
if(c[j-'a'+1][u-'a'+1]==0)
a[u-'a'+1]=(a[u-'a'+1]+b[j-'a'+1])%104659; b[j-'a'+1]=0;}
}
} int sum=0;
if(n%2==0)
{
for(int i='a';i<='z';i++)
sum=(sum+b[i-'a'+1])%104659;
}
else
{
for(int i='a';i<='z';i++)
sum=(sum+a[i-'a'+1])%104659;
}
cout<<sum;
}
int main()
{
read();
solve();
cin.close();
cout.close();
return 0;
}