結果
問題 |
No.1623 三角形の制作
|
ユーザー |
![]() |
提出日時 | 2023-12-20 02:18:22 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 519 ms / 2,000 ms |
コード長 | 704 bytes |
コンパイル時間 | 332 ms |
コンパイル使用メモリ | 82,976 KB |
実行使用メモリ | 142,024 KB |
最終ジャッジ日時 | 2024-09-27 09:19:52 |
合計ジャッジ時間 | 12,371 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 19 |
ソースコード
from collections import * def main(): n = int(input()) r = list(map(int,input().split())) g = list(map(int,input().split())) b = list(map(int,input().split())) dg,db,dr = defaultdict(int),defaultdict(int),defaultdict(int) for i in range(n): dg[g[i]] += 1 db[b[i]] += 1 dr[r[i]] += 1 acc = [0]*(3001) for i in range(1,3001): if i not in dr: acc[i] += acc[i-1] else: acc[i] += acc[i-1]+dr[i] ans = 0 for i in range(1,3001): for j in range(1,3001): ans += dg[i]*db[j]*(acc[min(i+j-1,3000)]-acc[max(i,j)-1]) print(ans) if __name__ == '__main__': main()