2 AtCoder Beginner Contest 106 B – 105
1 以上 N 以下の奇数のうち, 正の約数をちょうど8 個持つようなものの個数を求める問題。
def div(n):
cnt = 0
for i in range(1,n+1):
if n % i == 0:
cnt += 1
return cnt
n = int(input())
count = 0
for i in range(1,n+1):
if i % 2 == 0:
continue
if div(i) == 8:
count += 1
print(count)
シンプルに全探索。divでは1からnまでのすべての数で割ってみて約数の個数を求めている。
コメント