問題一覧 > 通常問題

No.2723 Fortune-telling by Flowers

レベル : / 実行時間制限 : 1ケース 2.000秒 / メモリ制限 : 512 MB / 標準ジャッジ問題
タグ : / 解いたユーザー数 79
作問者 : MasKoaTS / テスター : 👑 p-adic 👑 ygussany
1 ProblemId : 10462 / 出題時の順位表 / 自分の提出
問題文最終更新日: 2024-03-30 18:11:11

問題文

KP- のみからなる長さ NN の文字列 SS が与えられます。以下、SS の先頭から ii (1iN)(1 \leq i \leq N) 番目の文字を SiS_{i} と表します。
また、SS に含まれる文字のうち、少なくとも 11 つは - でないことが保証されます。

これから、コアさんパチェさんがゲームを行います。 コアさんから始めて、次の操作を交互に行います。

  1. まず、次の条件をすべて満たす整数の組 (x,y)(x, y)11 つ選ぶ。

    • 1xyN1 \leq x \leq y \leq N

    • xiyx \leq i \leq y を満たす任意の整数 ii について、SiS_{i}- でない

    • 1i<x1 \leq i < x または y<iNy < i \leq N を満たすある整数 ii が存在し、SiS_{i}- でない。

  2. 次に、xiyx \leq i \leq y を満たす各整数 ii に対し、SiS_{i}- に置き換える。

上の操作 1 において、選べる整数の組 (x,y)(x, y) が存在しないとき、ゲーム終了となります。

そして、ゲーム終了時、1iN1 \leq i \leq N を満たす唯一つの整数 ii が存在し、SiS_{i}- でないことが証明できます。
この SiS_{i} について、ゲームの結果を次のように決定します。

  • SiS_{i}K ならば コアさんの勝ちとし、そうでないならばパチェさんの勝ちとする。

両者が最善を尽くしたとき、どちらが勝つか判定してください。

TT 個のテストケースについて答えを求めてください。

制約

  • 1T1051 \leq T \leq 10^{5}

  • 1N5×1051 \leq N \leq 5 \times 10^{5}

  • SSKP- のみからなる長さ NN の文字列

  • SS に含まれる文字のうち、少なくとも 11 つは - でない

  • 11 つの入力で与えられる NN の総和は 5×1055 \times 10^{5} 以下

  • SS 以外の入力はすべて整数

入力

入力は次の形式で与えられます。

TT
case1\mathrm{case}_{1}
case2\mathrm{case}_{2}
  \vdots
caseT\mathrm{case}_{T}

各テストケースは次の形式で与えられます。

NN
SS

出力

答えを 11 行ずつ合計 TT 行に出力してください。

ii (1iT)(1 \leq i \leq T) 行目には、ii 個目のテストケースについてゲームを行ったときにコアさんが勝つならば K を、パチェさんが勝つならば P を出力してください。

サンプル

サンプル1
入力
4
1
K
9
-PKP-P-KK
3
PPK
10
K-PK---P-K
出力
K
P
K
K

まず、11 つ目のテストケースではコアさんが必勝です。このとき、次のように操作を行います。

  1. コアさんが選べる整数の組 (x,y)(x, y) は存在しない。 このとき、SSK なのでコアさんの勝ちとなる。

続いて、22 つ目のテストケースではパチェさんが必勝です。例えば、次のように操作を行います。

  1. コアさん(x,y)=(3,4)(x, y) = (3, 4) を選び、S3,S4S_{3}, S_{4}- に置き換える。このとき、SS-P---P-KK となる。

  2. パチェさん(x,y)=(9,9)(x, y) = (9, 9) を選び、S9S_{9}- に置き換える。このとき、SS-P---P-K- となる。

  3. コアさん(x,y)=(2,2)(x, y) = (2, 2) を選び、S2S_{2}- に置き換える。このとき、SS-----P-K- となる。

  4. パチェさん(x,y)=(8,8)(x, y) = (8, 8) を選び、S8S_{8}- に置き換える。このとき、SS-----P--- となる。

  5. コアさんが選べる整数の組 (x,y)(x, y) は存在しない。 このとき、SS-----P--- なのでパチェさんの勝ちとなる。

残りのテストケースについても同様に答えを求めると、上の出力例のようになります。

提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。