시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
---|---|---|---|---|---|
1 초 | 128 MB | 517 | 131 | 65 | 18.678% |
1 から 1000 までのどれかの整数が書かれたカードがたくさんある.アンナとブルーノはそれらのカードを用いて,次のようなゲームをする.
アンナは A 枚,ブルーノは B 枚のカードからなる山を持つ.アンナは A 枚のカードの中から任意の何枚か(0 枚でもよい)を捨てて新しい山を作る.ブルーノは B 枚のカードからなる山の一番上から何枚か(0枚でもよい)と,一番下から何枚か(0 枚でもよい)を捨てて新しい山を作る.ただし,捨てる際に残ったカードの並び替えは行わない.このように作った 2 つの山が一致していたら,一方の山に含まれるカードの枚数が 2 人の得点になる.ただし,2 つの山が一致するとは,山に含まれるカードの枚数 n が同じで,かつ上から i 番目 (1 ≤ i ≤ n) に書かれたカードの整数が全て同じであることである.
例えば,アンナが 5 枚のカードの山を持ち,書かれている整数は上から順に 1,2,3,4,5 であり,ブルーノが 4 枚のカードの山を持ち,書かれている整数が上から順に 3,1,4,1 であったとする.このとき,アンナが2,3,5 のカードを捨て,ブルーノが一番上の 3 と一番下の 1 のカードを捨てると 2 人の山が一致する.このとき,残った山の一方に含まれるカードの枚数は 2 枚なので,2 人は得点 2 を得る.
2 人の得点の最大値を求めたい.
アンナとブルーノが持っているカードの山の情報が与えられたときに,2 人の得点の最大値を求めるプログラムを作成せよ.
標準入力から以下のデータを読み込め.
制限
標準出力に,得点の最大値を表す整数を 1 行で出力せよ.
5 4 1 2 3 4 5 3 1 4 1
2
この入出力例は問題文中の例に対応している.
6 5 4 1 5 2 3 4 4 5 4 2 3
3
この入出力例では,2 人が得点 3 を得る方法が 2 通り存在する.アンナが 1, 2, 3 のカードを捨てブルー ノが 2, 3 のカードを捨てたとき, 2 人の山は上から順に 4, 5, 4 となり, 2 人の得点は 3 点となる. また, アン ナが 1, 5, 4 のカードを捨てブルーノが一番上の 4 と 5 のカードを捨てたとき, 2 人の山は上から順に 4, 2, 3 となり, 2 人の得点は 3 点となる.