概要
TGC003,いかがでしたでしょうか.
今回は,実装は軽く心地よく!をモットーに問題セットを構成しました.
問題によっては「実装つらいよ~~」となった方もいらっしゃったかもしれません.
「ひょっとしたらもっと実装が簡単な方針があったのではないか」と考えてみるといいかも?
問題原案:uni_kakurenbo
解説
任意の非負整数 x について,「x の各桁の和を 9 で割ったあまり」は「x そのものを 9 で割ったあまり」に一致することが知られています.
したがって,答えは Xmod9 に等しいです.
このことを証明しましょう.
非負整数 x の 10d(0≤d) の位を Dd と書くことにします.(0≤Dd<10)
このとき
- x=0≤d∑Dd×10d
です.
任意の 3 非負整数 a,b,k について a≡b⇔ak≡bk であることを用いると,
- x≡0≤d∑Dd×10d≡0≤d∑Dd×1d≡0≤d∑Dd(mod9)
が得られます.
解説:uni_kakurenbo
実装例