ABC100-B - Ringo's Favorite Numbers を解く(1)
ABC100-B - Ringo's Favorite Numbers
100 で D 回割り切れる正の整数のうち、N番目に小さいものを求める問題
いくつか例を見てみよう
まずは入出力例1の D=0 , N=5 の場合
100 で 0 回割り切れる、つまり 1 回も割り切れない正の整数は
1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , …
と 1 から順番に + 1 していった整数となるので 5番目に小さい 5 が答えである
次に入出力例2の D=1 , N=11 の場合
100 で 1 回割り切れる数は
100 , 200 , 300 , … と続くので 11番目にくる 1100 が答えとなる
最後に入出力例3の D=2 , N=85 の場合
100 で 2 回割り切れる数、つまり 10000 で割り切れる数は
10000 , 20000 , 30000 , … と続くので 85番目にくる 850000 が答えとなる
以上、3パターンを見ることで大体傾向は掴めた
まず、D=0 の場合は N の値そのままが
D=1 の場合は N に 100 を掛けた値
D=2 の場合は N に 10000 を掛けた値が答えになると思われる
以上を踏まえて書いたコードを以下に示す
提出したコード
# 入力 D,N=map(int,input().split()) # D(=0,1,2)の値によって場合分け if D==0: print(N) elif D==1: print(N*100) else: print(N*10000)
提出結果はWA!
3つのテストケースが通らなかった… 何か考慮漏れがあるのか?
ABC100-B - Ringo's Favorite Numbers を解く(2) へ続く