Pagini recente » Cod sursa (job #2281365) | Cod sursa (job #562101) | Cod sursa (job #2251586) | Cod sursa (job #2242071) | Cod sursa (job #2814802)
#include <fstream>
using namespace std;
ifstream fin("nrcuv.in");
ofstream fout("nrcuv.out");
bool ok[30][30];
int val[1000][30];
int main()
{
int n, m, rez = 0;
char a, b;
fin >> n >> m;
for(int i = 1; i <= m; i++)
{
fin >> a >> b;
ok[a + 1 - 'a'][b + 1 - 'a'] = ok[b + 1 - 'a'][a + 1 - 'a'] = 1;
}
for(int i = 1; i <= 26; i++)
val[1][i] = 1;
for(int i = 2; i <= n; i++)
{
for(int j = 1; j <= 26; j++)
{
for(int k = 1; k <= 26; k++)
{
if(!ok[j][k])
{
val[i][j] = (val[i][j] + val[i - 1][k]) % 104659;
}
}
}
}
for(int i = 1; i <= 26; i++)
rez += val[n][i];
fout << rez % 104659;
return 0;
}