너비가 80자인 터미널 안에 살고 있습니다. 지루해서 도미노를 연주하기로 결정했습니다. 아니요, Scrabble처럼 보이는 지루한 종류는 아닙니다. 재미있는 시간으로 1 초 동안 쓰러 뜨리는 재미있는 종류입니다.
터미널에서 도미노는 다음과 같습니다.
| upright domino
\ left-tilted domino
/ right-tilted domino
__ fallen domino
우리 모두 알다시피, 기울어 진 도미노가 똑바로 닿으면 두 번째 도미노도 기울어집니다. 이것에 대한 유일한 예외는 두 개의 기울어 진 도미노가 그것에 닿는 경우입니다.
|\ --> \\ /| --> // /|\ --> /|\
이 전환에 100ms가 걸리도록 터미널의 중력 상수를 조정하십시오.
기울어 진 도미노가 다른 도미노 또는 터미널의 벽에 의해 지탱되면 이동이 종료됩니다.
기울어 진 도미노가 없습니다.
\||||____||||/__ /|\ /\ /|\ __\||||____||||/
두 개의 가장 바깥쪽으로 기울어 진 도미노는 터미널 벽에 의해 지원되고 다른 모든 도미노에 의해 지원되므로 (80 자)가 이동합니다.
그러나 틸팅 방향의 공간이 비어 있으면 도미노가 떨어집니다.
| \\ --> |__\ // | --> /__|
단말기. 중력 상수. 당신은 요점을 얻는다…
마지막으로 왼쪽에서 약간의 바람이 나므로 오른쪽 기울어 진 도미노가 왼쪽 기울어 진 도미노보다 빠릅니다.
|/ \| --> |__\|
태스크
터미널에서 도미노를 재생하는 애니메이션을 보여주는 프로그램 / 기능을 작성하십시오.
코드는 다음을 수행해야합니다.
입력에서 도미노의 초기 상태를 나타내는 문자열을 읽습니다.
이 문자열은 80자를 초과하지 않으며 위에서 설명한 도미노와 빈 공간으로 만 구성됩니다.
상태를 인쇄하고 100ms 동안 기다립니다.
위에서 설명한대로 상태를 변환하십시오.
상태가 변경된 경우 2로 돌아갑니다.
추가 규칙
입력 문자열의 길이는 터미널 너비에 영향을 미치지 않습니다. 줄이 80 자보다 짧아도 터미널의 벽은 여전히 80 자 떨어져 있습니다.
2 단계를 실행할 때마다 상태가 동일한 위치에 인쇄되어 이전 상태를 덮어 써야합니다.
일부 언어는 정확히 100 밀리 초를 기다릴 수 없으므로 50 ~ 1000 밀리 초 사이의 양을 기다립니다.
표준 코드 골프 규칙이 적용됩니다.
예
초기 상태
||\/||
다음을 인쇄하십시오 (하나 이상).
||\/|| |\\//| \\\/// __\\//__
초기 상태
/||||\
다음을 인쇄
/||||\ //||\\ ///\\\
초기 상태
/|||\
다음을 인쇄
/|||\ //|\\
초기 상태
|/ \|/ \|/ \|/ \|
다음을 인쇄하십시오.
|__\|__\|__\|__\|
초기 상태 (80 자)
\||||____||||/__ /|\ /\ /|\ __\||||____||||/
다음을 인쇄
\||||____||||/__ /|\ /\ /|\ __\||||____||||/
/
하거나/|
타일이 제대로 떨어지지 않는 것을 볼 수 있습니다.