D - Small Multiple

700点埋めそうそう解説AC…

 

典型っぽいので慣れたい(むずくない?)

 

 

問題:Kの正の倍数の10進法の桁和で最小のものを求めよ

 

考察:

桁DPで150桁くらいまで雑にやったけどダメでした。

mod Kだろうなって感じはしたんですけど、うーーん

 

 

解説:

グラフ問題に帰着

操作を分解する

1:1を足す

2:10をかける

1の位9の後に1を足す前に、10をかけて到達しているらしい(ほんとか?)

 

この2つに分解できたらあとは割と楽です。

k個の頂点、2k個の辺で1からの最短距離を求めます。

2~9は1の操作で到達するので初期化しなくてよいです。

 

 

 

感想:

一見算数の問題でも、DPかグラフに帰着って典型っぽいですね。

前も見た気がする。今回は制約が大きそうなのでグラフなんですかね。判断が難しいです。

 

1桁ずつ処理することはわかるので、それを分解したときにグラフに見えるかは割とひらめきゲーな気がしました。たくさん問題やって経験値つみたいですね、