Cod sursa(job #2479345)
Utilizator | Data | 23 octombrie 2019 18:26:15 | |
---|---|---|---|
Problema | Lista lui Andrei | Scor | 15 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva de probleme | Marime | 0.52 kb |
#include <bits/stdc++.h>
using namespace std;
ifstream in("nrcuv.in");
ofstream out("nrcuv.out");
int n,m,v[30][30],dp[1100],p1,p2;
char c1,c2;
int main()
{
in>>n>>m;
dp[1]=26;
for(int i=1;i<=m;i++)
{
in>>c1>>c2;
if(v[c1-'a'+1][c2-'a'+1]==0) {
if(c1==c2) p1++;
else p2++;
}
v[c1-'a'+1][c2-'a'+1]=1;
v[c2-'a'+1][c1-'a'+1]=1;
}
for(int i=2;i<=n;i++)
dp[i]=26*dp[i-1]-2*p2-p1;
out<<dp[n];
return 0;
}