結果
問題 |
No.1233 割り切れない気持ち
|
ユーザー |
|
提出日時 | 2020-09-19 13:38:02 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 783 ms / 3,153 ms |
コード長 | 533 bytes |
コンパイル時間 | 722 ms |
コンパイル使用メモリ | 82,288 KB |
実行使用メモリ | 110,840 KB |
最終ジャッジ日時 | 2024-06-23 13:07:58 |
合計ジャッジ時間 | 10,565 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 39 |
ソースコード
n=int(input()) a=list(map(int,input().split())) a.sort() from bisect import bisect_left,bisect_right ans=0 d=dict() for i in range(n): if a[i] in d: ans+=d[a[i]] continue ans_sub=0 j=i #print(i) while j!=n: x=a[j]//a[i] b=bisect_left(a,(x+1)*a[i],lo=j)-1 #print((x+1)*a[i]) #print(j,b) #print(j,x,b-j+1) ans_sub+=(x*(b-j+1)*a[i]) j=b+1 #print(j,b) d[a[i]]=ans_sub ans+=ans_sub #print(sum(a)*n) #print(ans) print(sum(a)*n-ans)