時間制限:2000ミリ秒
メモリ制限:65536KB
問題
企業は覚えやすい電話番号を好みます。電話番号を覚えやすくする1つの方法は、電話番号を覚えやすい語句に置き換えることです。たとえば、TUT-GLOPと入力することで、Waterloo大学に電話をかけることができます。時には、番号の一部分が語句に置き換えられることもあります。今夜あなたがホテルへ帰るとき、310-GINOと入力することでGino'sにピザを頼むことができます。もうひとつの方法は、それぞれの桁を覚えやすくまとめることです。"three tens"(3-10-10-10)を入力すれば、Pizza Hutにピザを頼むことができます。
標準的な電話番号は、7桁の数字と3桁目と4桁目に置かれたハイフンで表します(例:888-1200)。電話番号のキーは次のように文字に割り当てられています。
- A,B,C->2
- D,E,F->3
- G,H,I->4
- J,K,L->5
- M,N,O->6
- P,R,S->7
- T,U,V->8
- W,X,Y->9
Q,Zにはキーが割り当てられていません。ハイフンは入力されず、必要に応じて加えたり削除したりできます。TUT-GLOPの正式な表記は888-4567で、310-GINOの正式な表現は310-4466、3-10-10-10の正式な表記は310-1010です。
2つの電話番号が同じ標準表記で表すことができる場合、2つは同等となります(同じ番号を入力します)。
あなたの会社は地元の会社の電話帳を編集しています。品質管理の一過程で、電話帳の中にある2つ(以上)の会社が同じ電話番号を持っていないか確認しようとしています。
入力
入力は1組のデータからなります。入力の最初の行には電話帳にある電話番号の数(100000までの正数)が1つだけあります。残っている行には電話帳の電話番号がそれぞれの行に1つずつあります。それぞれの電話番号は10進数の数字、英大文字(Q,Z以外)、ハイフンからなる文字列となっています。文字列の中の7つの文字(ハイフン以外)は数字とアルファベットとなります。
出力
書式にかかわらず1回より多く出現する電話番号を1行ごとに出力しなさい。それぞれの行には、まず標準表記をした電話番号が入り、次にスペースが続き、その次にその番号が電話帳に現れた回数が続きます。出力する行辞書式順序に配列しなさい。もし入力に重複した電話番号がなければ、"No duplicates."と出力しなさい。
入力の例
12 4873279 ITS-EASY 888-4567 3-10-10-10 888-GLOP TUT-GLOP 967-11-11 310-GINO F101010 888-1200 -4-8-7-3-2-7-9- 487-3279
出力の例
310-1010 2 487-3279 4 888-4567 3
出典
East Central North America 1999