This puzzle is wrong. The correct continuation after Nxd6 Kd7, it should be Qxf7+ Kc6 Qxb7 Kc5 and then Rd5#. But the answer to the puzzle is Nxd6 Kd7 Nxb7+ Ke8 and then Nd6+??
This puzzle is completely wrong
http://en.lichess.org/training/10701
This puzzle is completely wrong
http://en.lichess.org/training/10701