ある整数nnに操作を行って生まれる整数はn+dn+dn×rn \times rの高々22つです. よって,11以上yy以下の各整数を頂点とみなし, 1ny1 \leq n \leq yに対してnnからn+dn+dnnからn×rn \times rに有向辺を張ったグラフを考え, 11からyyまでの最短距離を計算すればよいです. これは,幅優先探索を用いて実装することができます.

また,このグラフは各頂点から高々22本の有向辺しか張られていないことから, 全体でも高々2y2y本の有向辺しかありません. よってこれを陽にもってDijkstra法によっても計算することができます.