题解 | 数对计数
数对计数
https://www.nowcoder.com/practice/7d05171e7e0e4c6086be233769e01d94
#include<iostream>
#include<set>
using namespace std;
multiset<int> ms;
int main() {
int n, c, t, res = 0;
cin >> n >> c;
while (n--) {
cin >> t;
ms.insert(t);
res += ms.count(t + c) + ms.count(t - c);
}
cout << res;
return 0;
}
使用迭代算法,初始多重集合为空,将数据依次放入集合,每多增加一个数x,相当于序数对对数增加set.count(x-c)+set.count(x+c)