28| A-B数对

代码实现

cpp 复制代码
#include <bits/stdc++.h>
using namespace std;

#define int long long
const int N = 2e5 + 10; 
unordered_map <int, int> a;
int cnt, n, c, b[N];

signed main()
{
	cin >>  n >> c;
	for (int i = 1; i <= n; i++) 
	{
		cin >> b[i];
		a[b[i]]++;
	}
	for (int i = 1; i <= n; i++)
	{
		cnt += a[b[i] + c];
	}
	cout << cnt << endl;
	return 0;
}
cpp 复制代码
#include <bits/stdc++.h>
using namespace std;

typedef long long LL;
const int N = 2e5 + 10; 
LL cnt, n, c, b[N];

int main()
{
	cin >>  n >> c;
	for (int i = 1; i <= n; i++) cin >> b[i];
	// 预处理 有序 
	sort(b+1, b+n+1);
	for (int i = 1; i <= n; i++)
	{
		LL x = b[i] + c;
		auto l = lower_bound(b + 1, b + n + 1, x);
		auto r = upper_bound(b + 1, b + n + 1, x); 
		cnt += (r - l);
	}
	cout << cnt << endl;
	return 0;
}
相关推荐
leobertlan2 小时前
痛苦系列 | DSP-03 跨越单位圆:Z变换与零极点分析
算法·程序员
蛋蛋的就会顺顺的2 小时前
hot100 p0——栈,贪心算法,动态规划
java·前端·javascript·算法·leetcode·力扣
开发小能手1233 小时前
答案daanC语言
数据结构·算法
遇印记3 小时前
传输层,网络层
运维·服务器·网络·windows·学习
Navigator_Z4 小时前
LeetCode //C - 1291. Sequential Digits
c语言·算法·leetcode
clorinda4 小时前
PyQt5学习:从界面搭建到与机器学习实战
学习
WL学习笔记5 小时前
C & C++ 内存管理
c++·c++内存管理
pride.li5 小时前
第03章 Python 教程-基础语法:注释与变量
服务器·前端·后端·python·算法·计算机视觉
欣欣之王来了6 小时前
Vue3项目脚手架:Vite vs Vue CLI怎么选?
前端·学习·架构·项目·vue3教程
旺仔仔仔6 小时前
机器人项目实战(5):从单次抓取,到接收指令连续做事
算法