CF932G.Palindrome Partition

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Given a string ss , find the number of ways to split ss to substrings such that if there are kk substrings (p1,p2,p3,...,pk)(p_{1},p_{2},p_{3},...,p_{k}) in partition, then pi=pki+1p_{i}=p_{k-i+1} for all ii (1<=i<=k)(1<=i<=k) and kk is even.

Since the number of ways can be large, print it modulo 109+710^{9}+7 .

输入格式

The only line of input contains a string ss (2<=s<=106)(2<=|s|<=10^{6}) of even length consisting of lowercase Latin letters.

输出格式

Print one integer, the number of ways of partitioning the string modulo 109+710^{9}+7 .

输入输出样例

  • 输入#1

    abcdcdab
    

    输出#1

    1
  • 输入#2

    abbababababbab
    

    输出#2

    3

说明/提示

In the first case, the only way to partition the string is abcdcdabab|cd|cd|ab .

In the second case, the string can be partitioned as abbababababbabab|b|ab|ab|ab|ab|b|ab or abbababababbabab|b|abab|abab|b|ab or abbababababbababbab|ab|ab|abbab .

首页