当前位置: 代码迷 >> 综合 >> HDU多校 Distinct Sub-palindromes
  详细解决方案

HDU多校 Distinct Sub-palindromes

热度:90   发布时间:2024-01-31 08:27:05.0

题目链接
题意:找长度为n含有最少的不同种类种类回文子串的的字符串数量
思路:分成四类:
1.n=1,长度为1,有26种
2.n=2,长度为2,有aa,ab两种类型,都是含2种子回文串,26^2种
3.n=3,长度为3,有5种类型,都是含3种子回文串,26^3种
4.n>3,找长度为3字符串的循环,都含3种子回文串,262524种

#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<cmath>
#include<algorithm>
#include<queue>
#include<stack>
#include<string>
#include<map>
#include<sstream>
#include<vector>
#include<ctime>
#include<list>
using namespace std;
typedef long long ll;
#define IOS ios_base::sync_with_stdio(0); cin.tie(0);cout.tie(0);
const int inf=0x3f3f3f3f;
int main()
{IOS;int t,n;cin>>t;while(t--){cin>>n;if(n==1) cout<<26<<endl;if(n==2) cout<<26*26<<endl;if(n==3) cout<<26*26*26<<endl;if(n>3) cout<<26*25*24<<endl;}return 0;
}
  相关解决方案