数列の中から最も長い等差数列を見つけ出し、その長さを答える。
等差数列というのは
Wikipedia - 等差数列
を見ると分かる通り、等間隔に並んだ数の列のことである。
例えば。
入力は、
12345abcz
のようになっている。
各文字は数を示している。文字と値の対応は下表の通り:
| 文字 | 0〜9 | a〜z |
|---|---|---|
| 値 | 0〜9 | 10〜35 |
012abku
は
[0, 1, 2, 10, 11, 20, 30]
という数列を意味している。この数列に埋まっている等差数列のうち、最長のものは
[0, 10, 20, 30]
となる。
この等差数列の長さは
4
なので、
4
を出力すればよい。
11112222
( 重複がある )
や
12abcd9
( 整列済みになっていない )
、
零壱弐参
( 0〜9、a〜z に当てはまらない )
など ) に対処する必要はない。
| # | 入力 | 期待 | 最長等差数列 |
|---|---|---|---|
| 0 |
12345abcz
|
5
|
12345
|
| 1 |
012abku
|
4
|
0aku
|
| 2 |
01245689cdeghik
|
6
|
048cgk
|
| 3 |
0
|
1
|
0
|
| 4 |
m
|
1
|
m
|
| 5 |
01
|
2
|
01
|
| 6 |
az
|
2
|
az
|
| 7 |
0az
|
2
|
0a
他 2 件
|
| 8 |
0ak
|
3
|
0ak
|
| 9 |
05ak
|
3
|
05a
他 1 件
|
| 10 |
01349acdrsuv
|
2
|
01
他 65 件
|
| 11 |
01245789efgipqstux
|
3
|
012
他 31 件
|
| 12 |
0123456789abcdefghijklmnopqrstuvwxyz
|
36
|
0123456789abcdefghijklmnopqrstuvwxyz
|
| 13 |
02468acegikmoqsuwy
|
18
|
02468acegikmoqsuwy
|
| 14 |
0369cfilorux
|
12
|
0369cfilorux
|
| 15 |
048cgkosw
|
9
|
048cgkosw
|
| 16 |
05afkpuz
|
8
|
05afkpuz
|
| 17 |
0123456789abcdefghjklmnopqrstuvwxyz
|
18
|
0123456789abcdefgh
他 1 件
|
| 18 |
0123456789bcdefghijklmopqrstuvwxyz
|
12
|
0369cfilorux
他 3 件
|
| 19 |
0156abfgklpquv
|
7
|
05afkpu
他 1 件
|
| 20 |
0167cdijopuv
|
6
|
06ciou
他 1 件
|
| 21 |
0178eflmst
|
5
|
07els
他 1 件
|
| 22 |
0189ghopwx
|
5
|
08gow
他 1 件
|
| 23 |
019aijrs
|
4
|
09ir
他 1 件
|
| 24 |
012567abcfghklmpqruvw
|
7
|
05afkpu
他 2 件
|
| 25 |
012678cdeijkopquvw
|
6
|
06ciou
他 2 件
|
| 26 |
012789efglmnstu
|
5
|
07els
他 2 件
|
| 27 |
01289aghiopqwxy
|
5
|
08gow
他 2 件
|
| 28 |
0129abijkrst
|
4
|
09ir
他 2 件
|
| 29 |
01235678abcdfghiklmnpqrsuvwx
|
7
|
05afkpu
他 3 件
|
| 30 |
01236789cdefijklopqruvwx
|
12
|
0369cfilorux
|
| 31 |
0123789aefghlmnostuv
|
5
|
07els
他 3 件
|
| 32 |
012389abghijopqrwxyz
|
5
|
08gow
他 3 件
|
| 33 |
01239abcijklrstu
|
4
|
0123
他 9 件
|
| 34 |
368acdknouvz
|
4
|
68ac
|
| 35 |
369chikmnopqruwx
|
6
|
mnopqr
|
| 36 |
05689cdefghijklmnopqrstvwy
|
18
|
cdefghijklmnopqrst
|
| 37 |
2489abdeiklrsuvwz
|
4
|
28ek
他 2 件
|
| 38 |
678bhijklnpqrsuvwxyz
|
6
|
hjlnpr
他 1 件
|
| 39 |
1246cfjkopquxz
|
5
|
fkpuz
|
| 40 |
123459abcefhilmotuvx
|
6
|
9cfilo
|
| 41 |
02578acdefikmopqsuvwxz
|
8
|
05afkpuz
他 1 件
|
| 42 |
135abdefghijlopstuwz
|
7
|
defghij
|
| 43 |
0126789fgjnotuvxy
|
5
|
29gnu
|
| 44 |
2345678defjkmnoqrtvwxy
|
7
|
2345678
|
| 45 |
02568bdemnostw
|
5
|
258be
|
| 46 |
145689bdfhilnqrstvwxz
|
6
|
159dhl
他 2 件
|
| 47 |
4aghjrtuvwxyz
|
7
|
tuvwxyz
|
| 48 |
158achklmqstwy
|
3
|
5ht
他 13 件
|
| 49 |
012346abceghjknortv
|
5
|
01234
他 2 件
|