公式
B - カップリング選抜 解説
by
B - カップリング選抜 解説
by
sounansya
ペアにする \(1\) 人を固定する(スキル値を \(x\) とする)と、もう \(1\) 人のスキル値は \(S-x\) となります。したがって、 map などのデータ構造で各スキル値を持つ人が何人いるかを高速に計算できるようにし、 \(1\) 人を固定した際に対応するメンバーが何人いるかを求めていけば良いです。
from collections import defaultdict
n, s = map(int, input().split())
mp = defaultdict(int)
ans = 0
for i in list(map(int, input().split())):
ans += mp[s - i]
mp[i] += 1
print(ans)
投稿日時:
最終更新: