파일 업로드

강아지 찾기

profile
실행 시간 제한메모리 제한
2 초1024 MB
📃 해결할 문제

시우는 강아지 콩이를 산책시키던 도중 강아지만 두고 사라져 버렸습니다. 콩이는 1의 단위로 나뉘어 있는 무한히 펼쳐지는 직선형 산책로에 있으며 t=0t=0시에 이 산책로의 x=0x=0 위치에 있습니다. 콩이는 시우를 찾기 위해 왼쪽이나 오른쪽으로 매초 1단위씩 움직여서 시우를 찾습니다. 하지만 시우는 없고 TT 초 후 콩이는 다시 x=0x=0 에 다다라버리고 지쳐서 찾는 것을 포기합니다.


시우는 콩이를 산책로에 두고 간 것이 떠올라서 콩이를 찾으러 다시 산책로에 왔고 콩이가 xx 를 건넌 횟수를 알아냈습니다.  
xx 는 산책로의 0.5,1.5,2.5,,(N1).50.5, 1.5, 2.5, \ldots, (N-1).5 지점을 의미합니다. (1N1051 \leq N \leq 10^5, 1Ai1061 \leq A_i \leq 10^6, Ai106\sum A_i \le 10^6) 콩이는 산책로를 벗어나는 구간으로 이동하지 않습니다.

콩이의 경로는 T=i=0N1AiT = \sum_{i=0}^{N-1} A_i LLs와 RRs의 문자열로 표현될 수 있고 ii번째 문자는 콩이가 ii번째 초 동안 움직이는 방향을 나타냅니다. 방향 변경의 횟수는 LRLRs의 출현 횟수와 RLRLs의 출현 횟수를 합한 것으로 정의됩니다.

방향 변경 횟수를 최소화하는 AA에 일치하는 콩이가 선택할 수 있는 어떤 경로라도 찾아 시우를 도와주세요. 최소한 하나 이상의 유효한 경로가 보장됩니다.

💻 입력

첫 번째 줄은 NN을 포함합니다. 두 번째 줄에는 공백으로 구분된 숫자 A0,A1,,AN1A_0,A_1, \dots,A_{N-1}이 포함됩니다.

🖨️ 출력

길이 T=i=0N1AiT = \sum_{i=0}^{N-1} A_i인 문자열 SS를 출력하십시오. 여기서 SiS_iLL 또는 RR이며, 이는 콩이가 ii번째 초 동안 이동하는 방향을 나타냅니다. 만약 방향 변경 횟수를 최소화하는 여러 경로가 있다면, 그 중 어떤 것이든 출력하십시오.


💻 예제 입력 1
2
2 4
🖨️ 예제 출력 1
RRLRLL
💻 예제 입력 2
3
2 4 4
🖨️ 예제 출력 2
RRRLLRRLLL

💡 힌트

단 한 가지의 유효한 경로만이 있으며, 이는 경로 01212100 \to 1 \to 2 \to 1 \to 2 \to 1 \to 0에 해당합니다. 이것이 유일하게 가능한 경로이기 때문에, 방향 변경 횟수도 가장 적습니다.

 

예시 입력:

3
2 4 4

예시 출력:

RRRLLRRLLL

 

3가지 가능한 경로가 있습니다:3가지 가능한 경로가 있습니다:

RRLRRLRLLL
RRRLRLLRLL
RRRLLRRLLL

첫 두 경로는 방향 변경이 5회 이지만, 마지막 경로는 오직 3회입니다. 그러므로 마지막 경로만이 올바른 출력입니다.

 

점수:

  • 입력 3-5: N2N \le 2
  • 입력 3-10: T=A0+A1++AN15000T = A_0 + A_1 + \cdots + A_{N-1} \leq 5000
  • 입력 11-20: 추가된 제약은 없습니다.

출처: USACO 2023 January Contest, Silver Problem 3. Moo Route