結果
| 問題 | 
                            No.1058 素敵な数
                             | 
                    
| コンテスト | |
| ユーザー | 
                            👑  Kazun
                         | 
                    
| 提出日時 | 2020-09-04 01:55:19 | 
| 言語 | PyPy3  (7.3.15)  | 
                    
| 結果 | 
                             
                                AC
                                 
                             
                            
                         | 
                    
| 実行時間 | 51 ms / 2,000 ms | 
| コード長 | 746 bytes | 
| コンパイル時間 | 180 ms | 
| コンパイル使用メモリ | 82,304 KB | 
| 実行使用メモリ | 57,856 KB | 
| 最終ジャッジ日時 | 2024-11-24 11:10:15 | 
| 合計ジャッジ時間 | 1,179 ms | 
| 
                            ジャッジサーバーID (参考情報)  | 
                        judge3 / judge2 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| sample | AC * 1 | 
| other | AC * 9 | 
ソースコード
#次の素数
def Next_Prime(N,K=1):
    """
    Nを上回る自然数のうち,K番目に小さい素数
    N:自然数
    """
    if K>0:
        while K>0:
            N+=1
            if Is_Prime(N):
                K-=1
    else:
        while K<0:
            N-=1
            if Is_Prime(N):
                K+=1
    return N
#素数判定
def Is_Prime(N):
    N=abs(N)
    if N<=1:
        return False
    k=2
    while k*k<=N:
        if N%k==0:
            return False
        k+=1
    return True
#================================================
N=int(input())
if N==1:
    print(1)
    exit()
N-=1
T=[]
for i in range(1,N+1):
    T.append(Next_Prime(10**5,i))
P=list(set(a*b for a in T for b in T))
P.sort()
print(P[N-1])
            
            
            
        
            
Kazun