您的任务:编写一个程序/函数,当给定仅包含ASCII字符的字符串时,将以反白的方式输出/返回该字符串。
例:
1)输入
Hello, World!
2)在输入中为唯一字符编号。(输入字符串之间用竖线(|
)分隔,以提高可读性)
H|e|l|l|o|,| |W|o|r|l|d|!
1 2 3 4 5 6 7 8 9 10
3)对于重复字符,请查找该字符的第一个匹配项,并用与第一个相同的数字对重复的字符进行编号。
H|e|l|l|o|,| |W|o|r|l|d|!
1 2 3 3 4 5 6 7 4 8 3 9 10
4)颠倒字符串,但不颠倒数字。
!|d|l|r|o|W| |,|o|l|l|e|H
1 2 3 3 4 5 6 7 4 8 3 9 10
5)删除重复数字上方的字符。(已删除的字符用星号表示。)
!|d|l|*|o|W| |,|*|l|*|e|H
1 2 3 3 4 5 6 7 4 8 3 9 10
6)将被删除的字符替换为第一次出现在被删除字符结束的数字上的字符。
!|d|l|l|o|W| |,|o|l|l|e|H
1 2 3 3 4 5 6 7 4 8 3 9 10
7)输出
!dlloW ,olleH
测试用例:
Input -> Output
"Hello, World!" -> "!dlloW ,olleH"
"18464399" -> "99343488"
"Code Golf" -> "floG eloC"
"abcdefgABCDEFG" -> "GFEDCBAgfedcba"
"Mmm, marshmallows" -> "swwllwmhsrwm mms"
"15147" -> "74751"