百变吗喽
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 512 M,其他语言1024 M
64bit IO Format: %lld

题目描述

”你说得对,但是《黑神话:悟空》为中国大陆游戏公司游戏科学开发的一款动作角色扮演游戏,采用虚幻5引擎制作,以小说《西游记》为背景设定,玩家将扮演一位“天命人”,为了探寻昔日传说的真相,踏上一条充满危险与惊奇的西游之路。游戏于2020年8月20日公布首段实机演示,在2023年12月8日官方发布的发售日短片中宣布游戏发售日期为2024年8月20日。”

你虽然不是大圣也不是天命人,去不了西天取不了经,但你作为百变吗喽能够帮助小豫同学完成暑假作业,你可以变成任意一个小写字母,然后插入到小豫同学所写的单词中,来使得小豫同学最终的单词和正确答案一模一样。

现在给你小豫同学所写的单词s,和标准答案 t (均为只由小写字母组成的字符串,且一定有 len(s) = len(t)-1 ),你变为任意一个字母插入到任意位置(某个字母的后面或者整个单词的最前面)。 问有多少种插入的方案能够使得插入字母后 st 相同,并给出每种方案的插入位置和变化的字母。

输入描述:

第一行输入一个字符串s

第二行输入一个字符串t

保证( 1\le len(s) < 10^6 )

输出描述:

第一行输出方案数n,

接下来的 n 行,每行一个数字 x 和一个小写字母 ch ,分别表示插入的位置(即插入在第 x 个字母的后面,若插入在整个单词的前面,x = 0 ) ,以及你要变换的字母。

要求你输出的 n 个方案按照 x 从小到大排序,如果x相同,那么按照ch的ASCII码从小到大排序。
示例1

输入

复制
newcode
nowcoder

输出

复制
0

说明

无论如何都无法使得s = t
示例2

输入

复制
henan
hennan

输出

复制
2
2 n
3 n

说明

在第二个字母后面插入 n,或者第三个字母后面插入n
示例3

输入

复制
bcd
abcd

输出

复制
1
0 a

说明

在最前面插入字符a