【杭电多校2020】Distinct Sub-palindromes【结论】【构造】

题意:长度为 n n n的 本质不同的回文子串个数最少 的小写字母组成的字符串 的个数。

n ≤ 1 0 9 n\leq 10^9 n109

  1. 回文子串个数至少为不同字母的数量

显然

  1. 最少回文子串个数为 min ⁡ ( n , 3 ) \min(n,3) min(n,3)

n ≤ 2 n\leq2 n2显然

n ≥ 3 n\geq3 n3

构造 abcabcabc... \texttt{abcabcabc...} abcabcabc... 3 3 3一定可以达到

如果可以 ≤ 2 \leq 2 2,那么一定只用了 a,b \texttt{a,b} a,b两个字母

aaa,aab,aba,abb \texttt{aaa,aab,aba,abb} aaa,aab,aba,abb都有 3 3 3个,所以 2 2 2不能达到

  1. n ≥ 4 n\geq 4 n4时只有 abc \texttt{abc} abc的形式

aaa,aab,aba,abb \texttt{aaa,aab,aba,abb} aaa,aab,aba,abb已经有三个,无论添什么都会变多

abc \texttt{abc} abc后只能接 a \texttt{a} a,之后一定会进入循环

通过上述过程发现 n ≤ 3 n\leq 3 n3时所有串都成立

a n s = { 2 6 n n ≤ 3 26 × 25 × 24 n > 3 ans= \begin{cases} 26^n& n\leq3\\ 26\times 25\times 24&n>3 \end{cases} ans={26n26×25×24n3n>3

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值