くねくね増加列〜 横へな 2014.7.5 問題

問題

下図のように、5×5 のマス目があり、どのマスにも 0〜9 の数字が入っている。

このマス目の適当な場所から上下左右にたどり、どんどん増えていく数列(狭義単調増加列)を作ることを考える。
たとえば、上図の緑や青の線のようにたどると狭義単調増加列になる。
で。
入力で与えられる数の配置の上で作ることができる狭義単調増加列のなかで、もっとも要素数が多いものの要素数を計算するプログラムを書け。

入力・出力・詳細

入力は
01224/82925/69076/32298/21065
こんな感じ。
マス目は 5×5 固定になっていて、横書きの普通の順序で数を並べてある。
行の境目にはスラッシュ / がある。

出力は、くねくねたとどって作ることができる狭義単調増加列のなかで、最長のものの長さ。
この例だと最長のものは
0,1,2,3,6,8
などなので、出力はふつうに 10 進数で。
6
こんな感じ。

補足

サンプルデータ

# 入力 期待 経路
0 01224/82925/69076/32298/21065 6 0,1,2,3,6,8
1 03478/12569/03478/12569/03478 10 0,1,2,3,4,5,6,7,8,9
2 09900/28127/87036/76545/87650 10 0,1,2,3,4,5,6,7,8,9
3 77777/77777/77777/77777/77777 1 7
4 00000/11111/22222/33333/44444 5 0,1,2,3,4
5 01234/12345/23456/34567/45678 9 0,1,2,3,4,5,6,7,8
6 10135/21245/43456/55567/77789 8 0,1,2,4,5,7,8,9
7 33333/33333/55555/55555/77777 2 3,5
8 01234/11234/22234/33334/44444 5 0,1,2,3,4
9 98765/88765/77765/66665/55555 5 5,6,7,8,9
10 01234/10325/23016/32107/45670 8 0,1,2,3,4,5,6,7
11 34343/43434/34343/43434/34343 2 3,4
12 14714/41177/71141/17414/47141 3 1,4,7
13 13891/31983/89138/98319/13891 4 1,3,8,9
14 01369/36901/90136/13690/69013 5 0,1,3,6,9
15 02468/24689/46898/68986/89864 6 0,2,4,6,8,9
16 86420/68642/46864/24686/02468 5 0,2,4,6,8
17 77777/75557/75357/75557/77777 3 3,5,7
18 53135/33133/11111/33133/53135 3 1,3,5
19 01356/23501/45024/61246/13461 5 0,1,3,5,6
20 46803/68025/91358/34792/78136 4 0,3,5,8
21 66788/56789/55799/43210/33211 9 0,1,2,3,5,6,7,8,9
22 40000/94321/96433/97644/98654 9 0,1,2,3,4,6,7,8,9
23 58950/01769/24524/24779/17069 6 0,2,4,5,7,9
24 97691/01883/98736/51934/81403 4 0,3,4,6
25 92049/27798/69377/45936/80277 5 3,6,7,8,9
26 97308/77113/08645/62578/44774 5 0,1,4,6,8
27 90207/17984/01982/31272/60926 6 0,1,2,7,8,9
28 62770/65146/06512/15407/89570 4 0,1,2,6
29 93914/46889/27554/58581/18703 5 2,4,6,7,8
30 42035/12430/60728/30842/90381 5 0,3,4,7,8
31 90347/53880/67954/95256/68777 6 0,3,5,6,7,9
32 05986/60473/01606/16425/46292 5 0,4,7,8,9
33 18053/90486/24320/04250/03853 5 0,2,3,4,8
34 36865/13263/67280/18600/12774 5 0,3,5,6,8
35 72456/72052/79971/14656/41151 5 1,2,5,7,9
36 94888/28649/05561/76571/97567 5 0,5,6,7,9
37 50214/94693/88718/78922/55359 5 0,2,6,7,8
38 76502/99325/17987/31737/93874 7 0,2,3,5,6,7,9
39 87142/14764/13014/00248/73105 6 0,1,3,4,7,8
40 24573/71679/48704/19786/91834 7 1,4,5,6,7,8,9
41 20347/61889/06074/61263/20519 7 0,1,2,6,7,8,9
42 74344/97459/97302/14439/35689 6 0,3,4,6,8,9
43 04794/52198/50294/09340/24160 5 1,2,4,7,9
44 41065/69344/64698/54167/43348 7 1,3,4,6,7,8,9
45 39947/15696/03482/19574/70235 7 0,3,4,5,7,8,9
46 92767/16790/84897/69765/75734 7 3,4,5,6,7,8,9
47 09654/79610/05070/23456/74687 8 0,2,3,4,5,6,7,8
48 73998/98799/98707/05633/23915 8 0,2,3,5,6,7,8,9
49 35661/17480/89723/64335/27217 7 1,2,3,4,6,8,9
50 02489/77571/84873/03879/84460 7 0,2,4,5,7,8,9

C/C++/Java 用のテストデータ