AtCoder Beginner Contest 106 B – 105

AtCoderなど過去問

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までのすべての数で割ってみて約数の個数を求めている。

コメント

タイトルとURLをコピーしました