소개
중력으로 인해 동전이 맨 위에 삽입되고 맨 아래로 (맨 위 동전으로) 떨어지는 일치하는 게임을하고 있습니다.
그래서 이건
O <- inserting this coin
OO O
OOOOO
이 될 것입니다
O
OO O
OOOOO
이제 누군가 보드를 시계 방향으로 회전한다고 상상해보십시오. 다음과 같은 일이 발생합니다.
1. 보드가 회전
OOO
OO
O
OO
O
2. 중력으로 인해 동전이 떨어짐
O
O
OO
OO
OOO
당신의 작업
당신의 임무는 프로그램이나 기능을 작성하여 보드의 회전을 시뮬레이션하는 것입니다. 간단하게하기 위해 우리는 한 종류의 동전 만 취급하고 있습니다 (매우 흥미 진진한 매칭 게임은 아닙니다). 회전이 완료된 후에 만 중력이 적용되었다고 가정 할 수 있습니다. 보드가 시계 방향으로 회전합니다.
입력
입력은 3 가지 유형의 문자를 포함하는 문자열이됩니다.
- O (자본 o) 또는 0 (영)-동전 (해당 솔루션이 지원하는 것을 결정)
- (공백)-빈 필드
- \ n (새 줄)-행 끝
입력은 보드의 상태를 나타냅니다. 입력이 올바르게 구성되어 있고 보드의 유효한 상태를 포함한다고 가정 할 수 있습니다 (동전이 떠 있지 않음). 입력은 함수 매개 변수이거나 표준 입력 또는 파일에서 읽을 수 있습니다.
산출
출력은 회전 후 보드의 새로운 상태입니다. 출력은 입력과 동일한 3 가지 유형의 문자를 포함합니다. 출력은 함수에서 리턴되거나 표준 출력 또는 파일에 기록 될 수 있습니다.
견본
입력 1 :
O
OO O
OOOOO
출력 1 :
O
O
OO
OO
OOO
입력 2 :
O O
O O
출력 2 :
OO
OO
선택한 언어의 모든 언어와 표준 라이브러리를 사용할 수 있습니다. 바이트 단위의 최단 프로그램이 이깁니다.