영감을받은 것은 이진 벽 만들기
양의 정수 목록이 주어지면 [2, 6, 9, 4]
예를 들어 다음 과 같이 서로 위에 쓸 수 있습니다 .
0010
0110
1001
0100
이것을 벽으로 상상할 수 있습니다.
..#.
.##.
#..#
.#..
그러나 이것은 매우 약한 벽이며 붕괴되었습니다! 각 1
( #
)은 "지상"또는 다른 1
( #
)에 도달 할 때까지 쓰러집니다 . 0
S ( .
S)가 이동 된만큼 왼쪽 지점에 존재하는 1
S.
이것은 다음과 같습니다 :
....
....
.##.
####
다음으로 다시 변환됩니다.
0000
0000
0110
1111
숫자 목록은입니다 [0, 0, 6, 15]
.
다른 테스트 사례
[10, 17, 19, 23]
이것은 다음과 같습니다.
01010
10001
10011
10111
다음과 같이됩니다.
00000
10011
10011
11111
다시 번역 :
[0, 19, 19, 31]
도전
양의 정수 목록이 제공되면이 변환을 목록에 적용하십시오. 적절한 형식의 양의 정수 목록으로 입력 / 출력. 표준 허점이 적용됩니다.
이것은 code-golf 이므로 바이트 단위의 최단 답변이 이깁니다!