求助。。
查看原帖
求助。。
350446
chenxuanzhen楼主2020/8/24 14:54
#include<bits/stdc++.h>
using namespace std;
long long  a[10000001];
 long long cnt[10000001];
long long n, k;
int main(){
	cin >> n >> k;
	long long bi;
	for (long long i = 0; i < n ; ++i) {
		cin >> a[i] >> bi;
		cnt[a[i]] += bi;
	}
	 long long maxn = 0;
	bool flag = false;
	for (long long i = 0; i < n; ++i){
		if (cnt[a[i]] > 0 && cnt[a[i] + k] > 0) {
			if (k == 0 && cnt[a[i]] < 2) break;
			 long long pairs_num;
			if (cnt[a[i] + k] < cnt[a[i]]) pairs_num = cnt[a[i] + k] ;
			else pairs_num = cnt[a[i]];
			if (k == 0) {
				if (pairs_num * (a[i]) > maxn) maxn = pairs_num * (a[i]);	
			}
			else {
				if (pairs_num * (a[i] + a[i] + k) > maxn) maxn = pairs_num * (a[i] + a[i] + k);
			
			}
			flag = true;
		}
	}
	if (!flag) cout << "NO" << endl;
	else cout << maxn << endl;
}

最后一个点WA了

2020/8/24 14:54
加载中...