結果

問題 No.1006 Share an Integer
ユーザー NagisaNagisa
提出日時 2020-03-06 22:16:30
言語 PyPy3
(7.3.15)
結果
AC  
実行時間 400 ms / 2,000 ms
コード長 432 bytes
コンパイル時間 165 ms
コンパイル使用メモリ 82,076 KB
実行使用メモリ 96,180 KB
最終ジャッジ日時 2024-10-14 07:37:01
合計ジャッジ時間 4,663 ms
ジャッジサーバーID
(参考情報)
judge2 / judge3
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 37 ms
53,208 KB
testcase_01 AC 38 ms
52,464 KB
testcase_02 AC 43 ms
59,788 KB
testcase_03 AC 37 ms
53,260 KB
testcase_04 AC 44 ms
59,176 KB
testcase_05 AC 47 ms
61,104 KB
testcase_06 AC 48 ms
61,448 KB
testcase_07 AC 48 ms
60,896 KB
testcase_08 AC 48 ms
61,240 KB
testcase_09 AC 52 ms
61,208 KB
testcase_10 AC 48 ms
61,096 KB
testcase_11 AC 177 ms
82,476 KB
testcase_12 AC 360 ms
93,744 KB
testcase_13 AC 400 ms
95,444 KB
testcase_14 AC 342 ms
95,440 KB
testcase_15 AC 284 ms
90,776 KB
testcase_16 AC 135 ms
77,464 KB
testcase_17 AC 172 ms
81,856 KB
testcase_18 AC 315 ms
92,156 KB
testcase_19 AC 304 ms
90,160 KB
testcase_20 AC 323 ms
91,872 KB
testcase_21 AC 378 ms
96,180 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

X = int(input())

if X == 2:
    print("1 1")
    exit(0)

L = [1 for k in range(X+1)]
for k in range(2,X+1):
    l = 1
    while k*l < X+1:
        L[k*l] += 1
        l += 1

B = [0 for k in range(X+1)]
for k in range(1,X+1):
    B[k] = k-L[k]

t = 10**9
for k in range(1,X+1):
    t = min(t,abs(B[k]-B[X-k]))

ans = []
for k in range(1,X+1):
    if abs(B[k]-B[X-k]) == t:
        ans.append([k,X-k])

for e in ans:
    print(*e)
0