結果

問題 No.118 門松列(2)
ユーザー 学ぶマン
提出日時 2025-08-10 14:35:09
言語 PyPy3
(7.3.15)
結果
AC  
実行時間 144 ms / 5,000 ms
コード長 594 bytes
コンパイル時間 347 ms
コンパイル使用メモリ 82,396 KB
実行使用メモリ 89,864 KB
最終ジャッジ日時 2025-08-10 14:35:14
合計ジャッジ時間 4,252 ms
ジャッジサーバーID
(参考情報)
judge4 / judge5
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 26
権限があれば一括ダウンロードができます

ソースコード

diff #

INF = 10**18
from bisect import bisect_left, bisect_right

def cnt_ika(li, x): # x 以下の要素数
    return bisect_right(li, x)

def cnt_miman(li, x): # x 未満の要素数
    return bisect_left(li, x)

def cnt_ijou(li, x): # x 以上の要素数
    return len(li) - cnt_miman(li, x)

def cnt_choka(li, x): # x より大きい要素数
    return len(li) - cnt_ika(li, x)

N = int(input())
A = list(map(int, input().split()))
A.sort()

ans = 0
MOD = 10**9+7

for a in A:
    a_miman = cnt_miman(A, a)
    a_choka = cnt_choka(A, a)
    ans += a_miman * a_choka
    ans %= MOD

print(ans)
0