アニメーションは複数の静止画から動画を起こす映像手法のひとつで、日本ではテレビ番組または映画として放映・興行されているものが有名だろう。今では若い人たちを中心とする多くの人々から愛好されている。さて、ここに一人のアニメ愛好家ジャックがいる。年齢不詳、謎の青年とでも言っておこう。彼はアニメの中でも特に深夜から明け方に放送される番組が好きだ。
彼の部屋にはとても大きな紙があり、それはいつも壁に貼ってある。内容は曜日ごとのアニメ番組の放送時間割りだ。彼の家では日本全国に配置した秘密の支部から中継映像を見ることによって、日本で放送されるすべてのアニメを見ることが可能である。しかし時間割の内容によっては複数の番組が「同時に放映されている」がためにどちらか一方は諦めなければならない。ここで「同時に放映されている」とはそれらの放映時間に1分以上の重なり合いがあるということだ。特に最近は番組の数が増えてきて、彼にとって状況はさらに厳しい。実際には、あとで評価を見てから DVD を買って見るというスタイルの人もいれば、ニッコリ何とかに接続して見る人もいるだろう。いずれにせよ、彼はリアルタイムで見るのが一番好きだ。もちろんふたつ同時に見るなどという器用なことは出来ない。しかしながら、先に言ったように放送時間がかぶるものは見逃さなければならない。したがって彼にはこれだけは絶対に見るという番組がある。これらの番組からなる集合を F と書く。
あなたの仕事はジャックが作成した時間割をもとに、彼が F に含まれるすべての番組を見逃さず、かつなるべく多くの番組を見れるようにすることだ。もちろん番組そのものの選び方は複数あるだろうから、最大でいくつの番組が見れるかを求めほしい。もし、 F に含まれる2個以上の番組で同時に放映されているものがあれば、あなたはジャックに残念なお知らせをしなければならないだろう。この場合は -1 と出力してほしい。なお、番組はすべて30分だ。
入力は複数のデータセットからなる。
ひとつのデータセットは以下の形式で与えられる。
N PROGRAM1 PROGRAM2 ... PROGRAMN P FAV1 FAV2 ... FAVP
Nは整数で番組の数を示す。
PROGRAMi(1≤i≤N)は以下のような書式を持つ文字列だ。
name weekday start
Pは整数で、集合 F の要素数を表す。また FAVi(1≤i≤P≤N) は文字列で、彼が絶対に見逃すことができない番組の名前をあわらす。番組表にない番組名が与えられることはないものと仮定して良い。
N=0のとき、入力の終了を示す。
データセットの数は400以下である。
1≤N≤500
それぞれのデータセットにつき、以下の形式でジャックが見れる番組の最大数を示す1つの整数(S)を1行に出力せよ。
S
1 galaxy_angel 0 600 1 galaxy_angel 11 A 0 600 B 0 610 C 0 610 D 0 610 E 0 640 EE 0 700 F 0 710 G 0 710 H 0 710 I 0 740 J 0 750 2 B H 42 nchj 6 2620 anhnnnmewbktthsrn 4 2515 gntmdsh 1 1800 achnnl 4 2540 hnskirh 0 2200 aonexrcst 0 1700 dgdys 6 2330 hdnnara 4 2525 dnpaonntssotk 4 2555 ddmnwndrlnd 6 2500 C 4 2445 astrttnomch 0 2330 seknnqasr 1 2630 sftnt 4 2630 stnsgt 2 2605 drrnenmknmrmr 4 2610 hnzm 6 2713 yndmsoazzlsn 6 2658 mrahlcalv 4 2615 hshzrhkkrhs 1 900 ortchntsbshni 0 2430 kmnmzshrski 1 2530 sktdnc 4 1800 gykkybrkjhkirkhn 2 2459 trk 0 900 30zzsinhkntiik 3 2700 sngkotmmmirprdx 1 2600 yran 2 2529 tntissygntinybu 1 2614 skiichhtki 5 2505 tgrbnny 6 2558 dnbrsnki 3 1927 yugozxl 1 1930 frbllchrmn 1 1928 fjrg 1 1955 shwmngtr 0 2200 xmn 5 2200 rngnkkrskitikihn 0 2100 szysz 0 1254 prttyrythmaulrdrm 6 1000 sckiesfrntrqst 5 1820 mshdr 1 2255 1 mrahlcalv 0
1 4 31
2番目のテストケースにおいて、彼はBを見た後に続けてEを見ることが出来る。さらにその後、Hを見て、IかJのどちらかを選んで見ることが出来る。したがって最大4つの番組が視聴できることになる。