CodeACM
HOT 100 · 回溯 · LC 131

分割回文串:ACM 模式刷题

按标准输入读取测试数据,输出结果后可在 CodeACM 在线运行和提交。

题目描述

给你一个字符串 s,请你将 s 分割成一些 子串,使每个子串都是 回文串 。返回 s 所有可能的分割方案。

输入格式

输入一行仅包含小写字母的字符串 s。

输出格式

第一行输出方案数 m。每个方案一行,先输出子串数 k,再按顺序输出 k 个子串;方案按字典序排列。

数据范围

  • 1 ≤ s.length ≤ 16
  • s 仅包含小写英文字母

公开样例

样例 1

输入

aab

输出

2
3 a a b
2 aa b

a、a、b 和 aa、b 都由回文子串组成。

样例 2

输入

a

输出

1
1 a

单字符本身是回文串。

练习建议

先根据输入输出格式写出可运行程序,再用公开样例检查结果;遇到边界情况时,补充自测用例后提交。