한 문자열에서 다른 문자열로 백 스페이스 및 다시 입력 하는 방법은 다음과 같습니다 .
- 첫 번째 문자열부터 시작하십시오.
- 결과가 두 번째 문자열 의 접두어 가 될 때까지 끝에있는 문자를 제거하십시오 . (0 단계가 필요할 수 있습니다.)
- 결과가 두 번째 문자열과 같아 질 때까지 끝에 문자를 추가하십시오. (이 단계도 0 단계가 걸릴 수 있습니다.)
예를 들어,에서 경로 fooabc
에 fooxyz
외모가 좋아 :
fooabc
fooab
fooa
foo
foox
fooxy
fooxyz
태스크
단어 목록이 주어지면 빈 문자열부터 목록의 모든 단어까지 빈 문자열 로 돌아가는 방식으로 백 스페이스 하고 다시 입력하는 프로그램을 작성하십시오 . 모든 중간 문자열을 출력합니다.
예를 들어 input list가 주어지면 ["abc", "abd", "aefg", "h"]
출력은 다음과 같아야합니다.
a
ab
abc
ab
abd
ab
a
ae
aef
aefg
aef
ae
a
h
규칙
문자열 목록 또는 선택한 구분 기호가있는 단일 문자열을 반환하거나 인쇄 할 수 있습니다. 선택적 으로 초기 및 마지막 빈 문자열을 포함 할 수 있습니다 . 입력은 최소한 하나의 단어를 포함하고 각 단어는 소문자 ASCII 문자 ( a
– z
) 만 포함합니다 . 편집 : 입력의 연속 문자열이 서로 같지 않아야합니다.
이것은 코드 골프입니다 . 바이트 단위의 가장 짧은 코드가 이깁니다.
Python 3의 참조 구현 : 온라인으로 사용해보십시오!
["abc","abc"]
어떻습니까?
a,abc,abcde,abc,a,abc,abcde