1. paizaラーニングトップ
  2. レベルアップ問題集
  3. 文字列処理メニュー(言語選択)
  4. 問題一覧 Ruby編
  5. パスワード作成 Ruby編

文字列処理メニューのアイコン
パスワード作成 Ruby編(paizaランク C 相当)

問題にチャレンジして、ユーザー同士で解答を教え合ったり、コードを公開してみよう!

問題

下記の問題をプログラミングしてみよう!

K さんは paiza のアカウントを作成することにしました。そのためには、パスワードの設定が必要なことがわかりました。
そこで K さんは忘れないように、次のようなルールにのっとって N 文字のパスワードを設定することにしました。

・ ルール
K さんは N 文字のうち、 Q 文字だけ覚えておく文字を決めておく。
具体的には n_i 文字目を c_i とだけ決めて、残りの全ての文字を C にする。

K さんの設定したパスワードを当ててください。


・ N = 5 , Q = 1 , n_1 = 2 , c_1 = 'T' , C = 'K' のとき
パスワードは 5 文字であり、 2 文字目が 'T' , それ以外の文字を 'K' としたものである "KTKKK" が K さんのパスワードとなる。

入力される値

N      
Q
n_1 c_1
...
n_Q c_Q
C


・ 1 行目では、パスワードの文字数 N が与えられます。
・ 2 行目では、K さんの覚えておく文字数 Q が与えられます。
・ 続く Q 行では、何文字目を覚えておくかを表す n_i と覚えておく文字 c_i が与えられます。
・ 最後の行では、パスワードの残りの部分を埋めるための文字 C が与えられます。


入力値最終行の末尾に改行が1つ入ります。
文字列は標準入力から渡されます。 標準入力からの値取得方法はこちらをご確認ください
期待する出力

K さんのパスワードを 1 行で出力してください。

条件

・ 1 ≦ |N| ≦ 1000
・ 1 ≦ Q ≦ N
・ 1 ≦ n_i ≦ N (1 ≦ i ≦ Q)
・ i != j のとき、 n_i != n_j (1 ≦ i , j ≦ Q)
・ c_i と C は 1 文字 (1 ≦ i ≦ Q)

入力例1

5
1
2 T
K

出力例1

KTKKK

入力例2

100
20
2 r
4 y
5 y
7 n
10 3
15 8
17 3
30 5
36 j
45 e
55 t
56 1
58 e
59 p
60 q
71 e
77 z
80 p
84 e
90 Q
m

出力例2

mrmyymnmm3mmmm8m3mmmmmmmmmmmm5mmmmmjmmmmmmmmemmmmmmmmmt1mepqmmmmmmmmmmemmmmmzmmpmmmemmmmmQmmmmmmmmmm

入力例3

1
1
1 p
a

出力例3

p

入力例4

8
7
1 p
2 a
3 s
4 s
6 o
7 r
8 d
w

出力例4

password

問題一覧へ戻る

ページの先頭へ戻る