#570. [ABC352B] Typing

[ABC352B] Typing

题目描述

高桥君尝试用键盘输入一个由小写英文字母组成的字符串 SS

他只看键盘,没看屏幕。每当他错误地键入了一个与目标不同的小写字母时,他会立刻按下退格键。然而,退格键是坏的,因此错误键入的字母不会被删除,实际留在屏幕上的字符串为 TT

他没有按错除小写字母键以外的任何按键。

TT 中,没有打错的字符被称为 正确键入的字符

请你找出 TT 中所有正确键入的字符的位置。

输入格式

输入共两行,格式如下:

第一行:字符串 SS

第二行:字符串 TT

输出格式

S|S|SS 的长度。如果正确键入的字符是 TT 的第 A1,A2,,ASA_1, A_2, \ldots, A_{|S|} 个字符,则按顺序在一行内输出 A1,A2,,ASA_1, A_2, \ldots, A_{|S|},用空格分隔。

输出必须保证是升序的,即对于每个 1iS11 \le i \le |S| - 1,有 Ai<Ai+1A_i < A_{i+1}

样例

样例 1

abc
axbxyc
1 3 6

解释: 高桥的输入过程如下:

  • 键入 a
  • 想键入 b 但错误地输入了 x
  • 按下退格键,但字符未被删除。
  • 键入 b
  • 想键入 c 但错误地输入了 x
  • 按下退格键,但字符未被删除。
  • 想键入 c 但错误地输入了 y
  • 按下退格键,但字符未被删除。
  • 键入 c

正确键入的字符是第 1、3、6 个字符。

样例 2

aaaa
bbbbaaaa
5 6 7 8

样例 3

atcoder
atcoder
1 2 3 4 5 6 7

解释: 高桥没有输错任何字符。

数据范围

  • SSTT 均由小写英文字母组成。
  • 1S,T2×1051 \le |S|, |T| \le 2 \times 10^5
  • TT 是通过题目描述的过程可能得到的字符串。