##C 含txt序列
代码是根据出题人写的题解写的 具体化实现了一下 弱鸡造福弱鸡
##思路
dp
**直接算出含txt的序列比较难,会一直有重复,所以转变思维,求不含txt的序列的个数,然后全排列减去它就是答案
f[i][j],表示以j结尾的不含txt串的序列的个数 ans=26^n-f[n][0]-f[n][1]-f[n][2] j=1表示以t结尾,j=2表示以tx结尾,j=0表示其他所有情况**
注意取模要每步取模 涉及到减法时要+mod取mod
##代码
#include<bits/stdc++.h>
#define int long long
using namespace std;
const int mod = 998244353;
int f[200005][4] = { 0 };//f[i][j],表示以j结尾的不含txt串的序列的个数 ans=26^n-f[n][0]-f[n][1]-f[n][2] j=1表示以t结尾,j=2表示以tx结尾,j=0表示其他所有情况
int ks(int a) {
int c = 26;
int ans = 1;
while (a) {
if (a & 1) ans = (ans * c)%mod;
c = (c * c) % mod;
a >>= 1;
}
return ans;
}
signed main()
{
f[0][0] = 1;
for (int i = 1; i <= 200005; i++) {
f[i][1] = (f[i - 1][1] + f[i - 1][0])%mod;
f[i][2] = f[i - 1][1];
f[i][0] = ((f[i - 1][1] * 24%mod + f[i - 1][2] * 25%mod )%mod+ f[i - 1][0] * 25%mod)%mod;
//t_ 排除尾部为t和为x的情况 tx_ 排除尾部为t的情况 不可能为tx __排除尾部为t的情况 不可能为tx
}
int t;
cin >> t;
while (t--) {
int n;
cin >> n;
cout << (ks(n)- ((f[n][1] + f[n][0])%mod + f[n][2])%mod+mod)%mod<<endl;//一直取mod 结果会有负数得加mod余mod
}
return 0;
}