$m{0}=0; sub f{ my($n)=@_; $m{$n}//=f($n>>1)+f($n-1>>2)+f($n+1>>2)+($n+3>>1); } <>; print f($_)-$_,$/for<>;