結果

問題 No.1058 素敵な数
ユーザー GeckoちゃんGeckoちゃん
提出日時 2020-05-22 21:57:48
言語 Python3
(3.12.2 + numpy 1.26.4 + scipy 1.12.0)
結果
AC  
実行時間 37 ms / 2,000 ms
コード長 764 bytes
コンパイル時間 87 ms
コンパイル使用メモリ 12,672 KB
実行使用メモリ 10,880 KB
最終ジャッジ日時 2024-04-15 16:45:00
合計ジャッジ時間 1,018 ms
ジャッジサーバーID
(参考情報)
judge2 / judge1
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 37 ms
10,880 KB
testcase_01 AC 35 ms
10,880 KB
testcase_02 AC 34 ms
10,880 KB
testcase_03 AC 34 ms
10,752 KB
testcase_04 AC 35 ms
10,880 KB
testcase_05 AC 35 ms
10,880 KB
testcase_06 AC 35 ms
10,880 KB
testcase_07 AC 35 ms
10,880 KB
testcase_08 AC 34 ms
10,880 KB
testcase_09 AC 34 ms
10,880 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

from math import sqrt
from collections import Counter

def prime_factorization(n):
    counter = Counter()
    for i in range(2, int(sqrt(n)) + 1):
        while n % i == 0:
            n //= i
            counter[i] += 1

    if n != 1:
        counter[n] += 1

    return list(counter.items())

def prime_factors(n):
    return set(map(lambda x: x[0], prime_factorization(n)))



import itertools

primes = []
cur = 10**5+1
while True:
    now = prime_factors(cur)
    if len(now) == 1:
        primes.append(cur)

    cur += 1
    if len(primes) == 10:
        break
ans = set([1])

#print(primes)
for p1,p2 in itertools.product(primes, repeat=2):
    a = p1*p2
    ans.add(a)
ans = list(ans)
ans.sort() 
#for a in ans:
#    print(a)

print(ans[int(input())-1])
0