Pagini recente » Cod sursa (job #3362594) | Cod sursa (job #3364139) | Cod sursa (job #3362060) | Cod sursa (job #3363920) | Cod sursa (job #3363966)
#include<bits/stdc++.h>
using namespace std;
const int MOD = 104659;
int n , m;
int dp[1005][27];
set<int> lit[27];
int main(){
cin >> n >> m;
for(int i = 0 ; i < 26 ; i++){
for(int j = 0 ; j < 26 ; j++){
lit[i].insert(j);
}
}
while(m--){
char a , b;
cin >> a >> b;
lit[a - 'a'].erase(b - 'a');
lit[b - 'a'].erase(a - 'a');
}
for(int i = 0 ; i < 26 ; i++) dp[1][i] = 1;
for(int i = 2 ; i <= n ; i++){
for(int l = 0 ; l < 26 ; l++){
for(int last : lit[l]){
dp[i][last] = (dp[i][last] + dp[i - 1][last]) % MOD;
}
}
}
int rez = 0;
for(int i = 0; i < 26 ; i++){
rez = (rez + dp[n][i]) % MOD;
}
cout << rez;
}