![]() |
|
2010年12月19日
情報オリンピック日本委員会
|
あなたは N 個の指輪を持っている. どの指輪にも,アルファベットの大文字 10 文字からなる文字列が刻印されている. 指輪には文字列の最初と最後がつながった形で文字が刻印されている. 指輪に刻印された文字列を逆順に読む心配はない.
探したい文字列が与えられたとき,その文字列を含む指輪が何個あるかを求めるプログラムを作成せよ.
入力は 2+N 行からなる.
1 行目には,1 文字以上 10 文字以下のアルファベットの大文字からなる探したい文字列が書かれている.
2 行目には,指輪の個数 N ( 1 ≦ N ≦ 100 )が書かれている.
2+i 行目(1 ≦ i ≦ N )には, i 個目の指輪に刻印されている 10 文字からなる文字列が書かれている.
探したい文字列を含む指輪の個数を表す整数を 1 行で出力せよ.
入力例 1 | 入力例 2 | 入力例 3 |
---|---|---|
ABCD 3 ABCDXXXXXX YYYYABCDXX DCBAZZZZZZ |
XYZ 1 ZAAAAAAAXY |
PQR 3 PQRAAAAPQR BBPQRBBBBB CCCCCCCCCC |
出力例 1 | 出力例 2 | 出力例 3 |
2 |
1 |
2 |
入力例 2 の指輪には「XYZ」という文字列が 1 つ含まれている.これは、指輪の文字列の最初と最後がつながっているためである.
入力例 3 の 1 個目の指輪には「PQR」という文字列が 2 つ含まれており, 2 個目の指輪には「PQR」という文字列が 1 個含まれており, 3 個目の指輪には「PQR」という文字列が含まれていない. そのため「PQR」という文字列が含まれている指輪の数は 2 個となる.
※各入出力例のデータは, 右クリック等によりファイルに保存して利用可能です.