結果

問題 No.118 門松列(2)
ユーザー kutsutama
提出日時 2019-01-14 00:43:18
言語 Python3
(3.13.1 + numpy 2.2.1 + scipy 1.14.1)
結果
AC  
実行時間 107 ms / 5,000 ms
コード長 439 bytes
コンパイル時間 350 ms
コンパイル使用メモリ 12,544 KB
実行使用メモリ 16,876 KB
最終ジャッジ日時 2024-12-29 15:25:19
合計ジャッジ時間 3,144 ms
ジャッジサーバーID
(参考情報)
judge3 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 26
権限があれば一括ダウンロードができます

ソースコード

diff #

N = int(input())
A = [int(x) for x in input().split()]

mod = 10**9 + 7
A.sort()
c = []
prev = 0
for ai in A:
    if ai != prev:
        c += [1]
        prev = ai
    else:
        c[-1] += 1

res = 0
su_d = sum(c[2:])
for p in range(len(c) - 2):
    su = su_d
    for q in range(p + 1, len(c) - 1):
        res += c[p] * c[q] * su % mod
        res %= mod
        su -= c[q + 1]
    su_d -= c[p + 2]

print(res)
0