結果
| 問題 |
No.1006 Share an Integer
|
| コンテスト | |
| ユーザー |
brthyyjp
|
| 提出日時 | 2020-03-06 23:13:44 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 87 ms / 2,000 ms |
| コード長 | 682 bytes |
| コンパイル時間 | 207 ms |
| コンパイル使用メモリ | 81,920 KB |
| 実行使用メモリ | 71,040 KB |
| 最終ジャッジ日時 | 2024-10-14 09:43:09 |
| 合計ジャッジ時間 | 2,509 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 19 |
ソースコード
x = int(input())
def make_divisors(n):
divisors = []
for i in range(1, int(n**0.5)+1):
if n % i == 0:
divisors.append(i)
if i != n // i:
divisors.append(n//i)
#divisors.sort(reverse=True)
return divisors
l = [10**18]* (x//2)
for a in reversed(range(1, x//2+1)):
b = x - a
if abs(a-b) >= 1500:
break
l[a-1] = abs(a-len(make_divisors(a))-b+len(make_divisors(b)))
#print(l)
min_ = min(l)
anss = []
for i in range(len(l)):
if l[i] == min_:
anss.append(i+1)
if i+1 != x-(i+1):
anss.append(x-(i+1))
anss.sort()
for i in range(len(anss)):
print(anss[i], x-anss[i])
brthyyjp