0494253
2020/09/06(日) 19:04:52.54ID:EhLQImvSuse feature qw{signatures say}; no warnings 'experimental';
$T = <DATA>; chomp $T;
push @{$p{$$_[0]}}, $$_[1] for map{[split' ']}<DATA>;
use List::Util 'max';
sub f($t, $p) {
my $s = 0;
if ($t <= $T) {
if (0 < $p and $p < 11) {
$s++ if grep{$_ eq $p} @{$p{$t}};
$t++;
$s += max(f($t, $p-1), f($t, $p), f($t, $p+1));
}
}
$s
}
say f(0, 1);
__DATA__
11
3 2
2 3
3 4
4 4
5 4
4 7
5 7
6 7
7 7
8 7
7 10