루크 행 및 / 또는 빈 공간이있는 위치가 주어지면, 얼마나 많은 다른 루크 이동이 가능한지 출력하십시오. 루크는 왼쪽이나 오른쪽으로 빈 공간으로 이동할 수 있지만 다른 루크를 지나야하는 곳으로는 이동할 수 없습니다. 루크가 움직일 때 다른 루크는 그대로 남아 있습니다.
예를 들어이 위치에서 6 개의 이동 이 가능합니다.
.R..RRR.
- 첫 번째 (가장 왼쪽) 루크는 1 칸 왼쪽으로 이동하거나 1 또는 2 칸 오른쪽으로 이동 (3 이동)
- 다음 루크는 1 ~ 2 칸만 왼쪽으로 이동할 수 있습니다 (2 칸 이동).
- 세 번째 루크는 다른 두 루크 사이에 압착되어 전혀 움직일 수 없습니다 (0 이동)
- 마지막 루크는 오른쪽으로 1 칸만 이동할 수 있습니다 (1 칸 이동).
위치에 루크가 없거나 빈 공간이 없을 수도 있습니다.
입력 : 빈 공간과 빈 공간으로 구성된 비어 있지 않은 목록 (문자열, 배열 등). 당신은 그들에게 나타낼 수 등 True
/ False
, 1
/ 0
, 'R'
/ '.'
, 또는 두 일치 별개의 단일 바이트 문자 또는 원하는 한 자리 숫자. 루크를 의미하고 빈 공간을 의미하는 것은 당신에게 달려 있습니다.
출력 : 음이 아닌 정수. 정수 부동 소수점도 좋습니다.
테스트 사례
출력은 왼쪽의 숫자입니다.
6 .R..RRR.
0 .
0 R
4 R..RR
3 ...R
8 ..R..R..
0 ......
더 많은 테스트 사례의 경우 최대 길이 5까지의 모든 입력이 있습니다.
0 .
0 R
0 ..
1 .R
1 R.
0 RR
0 ...
2 ..R
2 .R.
1 .RR
2 R..
2 R.R
1 RR.
0 RRR
0 ....
3 ...R
3 ..R.
2 ..RR
3 .R..
3 .R.R
2 .RR.
1 .RRR
3 R...
4 R..R
3 R.R.
2 R.RR
2 RR..
2 RR.R
1 RRR.
0 RRRR
0 .....
4 ....R
4 ...R.
3 ...RR
4 ..R..
4 ..R.R
3 ..RR.
2 ..RRR
4 .R...
5 .R..R
4 .R.R.
3 .R.RR
3 .RR..
3 .RR.R
2 .RRR.
1 .RRRR
4 R....
6 R...R
5 R..R.
4 R..RR
4 R.R..
4 R.R.R
3 R.RR.
2 R.RRR
3 RR...
4 RR..R
3 RR.R.
2 RR.RR
2 RRR..
2 RRR.R
1 RRRR.
0 RRRRR