結果
問題 | No.889 素数! |
ユーザー |
![]() |
提出日時 | 2020-05-07 19:22:43 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
AC
|
実行時間 | 35 ms / 2,000 ms |
コード長 | 853 bytes |
コンパイル時間 | 236 ms |
コンパイル使用メモリ | 12,672 KB |
実行使用メモリ | 10,880 KB |
最終ジャッジ日時 | 2024-07-03 09:33:41 |
合計ジャッジ時間 | 3,617 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 61 |
ソースコード
def is_prime(x): if x <= 1: return False for i in range(2,int(-(-x**0.5)//1)+1): if x%i == 0: return False return x != 1 def f_1(x): for i in range(2,x+1): if i * i == x: return True break return False def f_2(x): for i in range(2,x+1): if i * i * i == x: return True break return False def divisor(y): i=1 table=[] while i * i <= y: if y%i == 0: table.append(i) table.append(y//i) i+=1 table=list(set(table)) return sum(table[:-1]) n=int(input()) if n==0: print(0) exit() if is_prime(n): print('Sosu!') elif f_1(n): print('Heihosu!') elif f_2(n): print('Ripposu!') elif divisor(n)==n: print('Kanzensu!') else: print(n)