Pagini recente » Cod sursa (job #207619) | Cod sursa (job #1134673) | Cod sursa (job #1818792) | Cod sursa (job #2380466) | Cod sursa (job #3191108)
#include <fstream>
using namespace std;
ifstream in("nrcuv.in");
ofstream out("nrcuv.out");
bool comb[26][26];
int nr[3][26];
void nextLine(int cur, int stop)
{
if (cur>stop) return;
for(int i=1; i<=26; i++)
{
for(int j=1; j<=26; j++)
{
if(comb[i][j]==false) nr[2][i]+=nr[1][j];
}
}
for(int i=1; i<=26; i++)
{
nr[1][i]=nr[2][i];
nr[2][i]=0;
}
nextLine(cur+1, stop);
}
int main()
{
int n,m;
in>>n>>m;
for(int i=1; i<=m; i++)
{
char a, b;
in>>a>>b;
comb[a-'a'+1][b-'a'+1] = true;
comb[b-'a'+1][a-'a'+1] = true;
}
for(int i=1; i<=26; i++) nr[1][i]=1;
nextLine(2, n);
int s=0;
for(int i=1; i<=26; i++) s+=nr[1][i];
out<<s;
}