A - Reverse and Minimize Editorial by m_99


\(f(K)\neq K\) の時、答えは \(0\) です。
そうでない時、答えは以下の値のうち \(N\) 以下のものの個数です。

  • \(K\)\(1,10,100,\ldots\) 倍した値
  • \(K\) を左右に反転して得られる整数を \(1,10,100,\ldots\) 倍した値

値を \(K\) 及びこれを反転した整数から始めて \(10\) 倍していき、\(N\) を超えた時点で調べるのをやめる、とすることで \(\mathrm O(\log N)\) ですべての候補を調べることが出来、これは十分高速です。
\(K\) を反転した整数が \(K\) と一致する場合に重複して数えないように気を付けてください。

posted:
last update: