설명
J , O , I からなる長さ N の文字列 S がある.
JOI 君は文字列 S に対して,以下の操作をそれ以上操作が行えなくなるまで繰り返す.
S の中で J , O , I がこの順で連続して並んでいる箇所を 1 つ選び,その部分を O , I , J の並びに置き換える.
操作の繰り返しは必ず終了し,また操作の方法によらず最終的な文字列の状態が一意に定まることが証明できる.
はじめの文字列 S の情報が与えられたとき,最終的な文字列 S を求めるプログラムを作成せよ.
제약
3 ≦ N ≦ 500 000 .
S は J , O , I からなる長さ N の文字列である.
N は整数である.
( 14 点) N ≦ 100 .
( 27 点) N は 3 の倍数で, S は JOI を N / 3 回繰り返したものである.
( 29 点) ある整数 k (2 ≦ k ≦ N ) が存在して, S の 1 文字目から k 文字目まではすべて J であり,一方 k + 1 文字目以降は J でない.
( 30 点) 追加の制約はない.
입력 형식
入力は以下の形式で与えられる.
N
S
출력 형식
最終的な文字列 S を 1 行で出力せよ.
예제 1
입력
6
JOIJOI
출력
OIOIJJ
예제 2
입력
8
JJJOIOIO
출력
OIOIJJJO
예제 3
입력
20
JJOIJOIJOOIJOIIJJOIO
출력
OIOIJJJJOOIOIJIOIJJO
문제 정보