Problem
プログラミング コンテストは、サンクトペテルブルク、バルナウル、および近隣の海外のいくつかの都市で毎年開催されます。これらの大会は、最も尊敬されている団体の 1 つである ACM (Association for Computing Machinery) が主催するプログラミングの学生世界選手権の一環として開催されます。これらの大会では、北東ヨーロッパ地域 NEERC (North-Eastern European Regional Contest) のチームが選ばれます。毎年、コンテストの主催者は、世界プログラミング選手権の決勝戦に招待されるチームを決定するという問題に直面しています。新しいルールによると、NEERC を代表する N チームまでが決勝に進みます。また、1 つの大学から k チーム以上が合格することはできません。同時に、そのようなすべてのセットから、準決勝大会でこれらのチームが占める場所の合計が可能な限り最小になるセットが選択されます。あなたの仕事は、準決勝大会の最終プロトコルと番号 N と k に基づいて、ワールド カップ決勝に招待されるチームを決定することです。
入力
入力ファイルの最初の行には、3 つの自然数 Р (1 ≤ P ≤ 100000) — があります。準決勝に参加するチーム数 N (1 ≤ N ≤ P ) と k (1 ≤ k ≤ P ) .次の P 行は、1 行に 1 つずつ、チームが対応する順位を獲得した大学の名前を示しています。大学の名前には、大文字と小文字のラテン文字とスペースが含まれています。大学名の長さは 30 文字以内です。次の行には、各大学のチーム番号がリストされています。したがって、大学名が i 行目に書かれている場合 (2 ≤ i ≤ P + 1) 、このチームは準決勝で i - 1 位になり、番号を持っていますP + 2 行の i - 1 桁に書かれています。
出力
出力ファイルには、世界プログラミング選手権の決勝に招待されたチームの名前が、準決勝で占有された場所でソートされて表示されます。チームの名前として、大学の名前に続けてスペース #チーム番号を出力します。
例
<頭>
# |
入力 |
出力 |
<本体>
1 |
9 5 2
ファンタジー大学
クレイジー大学
ファンタジー大学
ファンタジー大学
非常に良い U
いいね
非常に良い U
クレイジー大学
いいね
1 1 2 3 2 1 1 2 2
|
ファンタジー大学 #1
クレイジー ユニバーシティ #1
ファンタジー大学 #2
非常に良い U #2
いいね #1
|
表>