結果

問題 No.1623 三角形の制作
ユーザー brthyyjpbrthyyjp
提出日時 2021-07-23 22:07:21
言語 PyPy3
(7.3.15)
結果
AC  
実行時間 485 ms / 2,000 ms
コード長 809 bytes
コンパイル時間 253 ms
コンパイル使用メモリ 82,176 KB
実行使用メモリ 135,360 KB
最終ジャッジ日時 2024-07-18 17:51:11
合計ジャッジ時間 7,066 ms
ジャッジサーバーID
(参考情報)
judge2 / judge4
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 50 ms
59,148 KB
testcase_01 AC 46 ms
59,520 KB
testcase_02 AC 419 ms
114,560 KB
testcase_03 AC 422 ms
115,584 KB
testcase_04 AC 424 ms
115,712 KB
testcase_05 AC 485 ms
135,360 KB
testcase_06 AC 379 ms
84,480 KB
testcase_07 AC 424 ms
115,456 KB
testcase_08 AC 387 ms
86,484 KB
testcase_09 AC 426 ms
113,280 KB
testcase_10 AC 466 ms
120,008 KB
testcase_11 AC 435 ms
116,736 KB
testcase_12 AC 99 ms
102,528 KB
testcase_13 AC 108 ms
111,104 KB
testcase_14 AC 103 ms
107,264 KB
testcase_15 AC 177 ms
132,376 KB
testcase_16 AC 173 ms
131,996 KB
testcase_17 AC 167 ms
132,232 KB
testcase_18 AC 178 ms
133,200 KB
testcase_19 AC 119 ms
114,688 KB
testcase_20 AC 49 ms
59,008 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

import sys
import io, os
input = io.BytesIO(os.read(0,os.fstat(0).st_size)).readline

from collections import defaultdict
from itertools import accumulate

def main():
    n = int(input())
    R = list(map(int, input().split()))
    G = list(map(int, input().split()))
    B = list(map(int, input().split()))

    GC = defaultdict(lambda: 0)
    BC = defaultdict(lambda: 0)
    N = 3*10**3
    RC = [0]*(N+1)
    for g in G:
        GC[g] += 1
    for b in B:
        BC[b] += 1
    for r in R:
        RC[r] += 1
    RC = list(accumulate(RC))
    ans = 0
    for g, gc in GC.items():
        for b, bc in BC.items():
            x = min(N+1, max(g, b))
            y = min(N+1, g+b)
            cnt = RC[y-1]-RC[x-1]
            ans += max(0, cnt)*gc*bc
    print(ans)

if __name__ == '__main__':
    main()
0