結果
| 問題 |
No.736 約比
|
| コンテスト | |
| ユーザー |
URechaRecha
|
| 提出日時 | 2019-09-09 16:59:35 |
| 言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
| 結果 |
TLE
|
| 実行時間 | - |
| コード長 | 763 bytes |
| コンパイル時間 | 87 ms |
| コンパイル使用メモリ | 12,416 KB |
| 実行使用メモリ | 17,572 KB |
| 最終ジャッジ日時 | 2024-06-28 12:41:03 |
| 合計ジャッジ時間 | 3,993 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 3 TLE * 1 -- * 61 |
ソースコード
import math
n=int(input())
e =list(map(int,input().split()))
def f(num):
for i in range(n):
e[i] //=num
bl2 = 1#2で約比可能か
bli = 1#3以上の奇数で約比可能か
#0番目の要素を約分
divs = []
a = e[0]
min_num=3
while bl2 or bli :
if bl2:
if a%2 ==0:
a //=2
divs.append(2)
continue
else:
bl2 =0
for i in range(min_num,int(math.sqrt(a))+1,2):
if a%i ==0:
a //=i
divs.append(i)
min_num=i
continue
else:
bli =0
divs.append(a)
while len(divs) >0:
bl =1
d = divs.pop(0)
for i in range(1,n):
if e[i] % d >=1:
bl =0
if bl:
f(d)
print(":".join(map(str,e)))
URechaRecha