実数Aより大きくて、3で割れて、最後の桁が0になる最小の数

繰り返し処理禁止縛りなら

①B=A/10する
②C=Bの各桁を合算した数を求める
③d=C%3でCを3で割った余りを求める
④d=3-dにする
※3の倍数は各桁の総和が必ず3の倍数になるという法則があるため。D=0の時はA<を満たすために+3

⑤Y=(B+d)*10
これでおわり

...って愚直に考えてみたけど3と10は互いに素だから単純にozwkさんのやり方でいいのか

コメントを投稿

0 コメント