0
点赞
收藏
分享

微信扫一扫

P1102 A-B 数对

晚熟的猫 2022-01-31 阅读 73

解题思路:

对比各位大佬的二分还是map,我这个算是非常朴素简单的了,只是数据太大就会超时,我的思路就是先把每个输入的数排序,然后一个挨着一个开始找,当然中间加了判断条件,会减少很多循环次数。

代码如下:

#include<iostream>
#include<algorithm>
using namespace std;
int n, num, sum, ans[200005], flag;

int main()
{
	cin >> n >> num;
	int i, o;
	for (i = 0; i < n; ++i) cin >> ans[i];
	sort(ans, ans + n);
	for (i = 0; i < n; ++i) {
		for (o = i + 1; o < n; ++o) {
			if (ans[i] + num == ans[o]) ++sum;
			else if (ans[i] + num < ans[o]) break;
		}
	}
	cout << sum;
	return 0;
}
举报

相关推荐

A-B数对 多种方法 洛谷p1102

Java 算法 P1102

【字符匹配消除】A-B

L1-011 A-B

简单A-B(二分,map,双指针)

PAT--L1-011 A-B (C语言)

0 条评论