sub isprime{ ($v)=@_; for($i=2;$i*$i<=$v;++$i){ if($v%$i==0){ return 0; } } return $v>1; } $m=<>; <>; @c=glob<>; $b[$m]=1; for($j=$m;--$j;){ for(@c){ if($b[$j+$_] && $a[$j]<$a[$j+$_]+1){ $b[$j]=1; $a[$j]=$a[$j+$_]+1; } } if(isprime$j){ $s+=$a[$j]; } } ($yasui)=sort{$a-$b}@c; print$s+$m/$yasui|0;