結果
問題 |
No.1162 Many Quotients hard
|
ユーザー |
![]() |
提出日時 | 2025-01-07 05:56:05 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
AC
|
実行時間 | 31 ms / 2,000 ms |
コード長 | 450 bytes |
コンパイル時間 | 1,560 ms |
コンパイル使用メモリ | 12,288 KB |
実行使用メモリ | 10,240 KB |
最終ジャッジ日時 | 2025-01-07 05:56:09 |
合計ジャッジ時間 | 3,466 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 42 |
ソースコード
N=int(input()) OK=N NG=1 while OK>NG+1: mid=(OK+NG)//2 if abs(N/mid - N/(mid+1))<=1: OK=mid else: NG=mid OK2=N NG2=1 while OK2>NG2+1: mid=(OK2+NG2)//2 if abs(N/mid - N/(mid+1))<1: OK2=mid else: NG2=mid ANS=OK+N//OK2 SET=set() if OK==OK2: print(N//OK+OK-1) else: for i in range(OK,OK2): x=N//i if N//OK2<x<N//OK: SET.add(x) print(ANS+len(SET))