B. Kefa and Company双指针

Posted 辉小歌

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了B. Kefa and Company双指针相关的知识,希望对你有一定的参考价值。


https://codeforces.com/problemset/problem/580/B

#include<bits/stdc++.h>
using namespace std;
typedef pair<int,int> PII;
const int N=1e5+10;
vector<PII>ve;
int n,d,s[N];
int main(void)

	cin>>n>>d;
	for(int i=0;i<n;i++)
	
		int a,b; cin>>a>>b;
		ve.push_back(a,b);
	
	sort(ve.begin(),ve.end());
	long long int ans=0,s=0;
	for(int i=0,j=0;i<ve.size();i++)
	
		s+=ve[i].second;
		while(ve[i].first-ve[j].first>=d) s-=ve[j].second,j++;
		ans=max(ans,s);
	
	cout<<ans;
	return 0;

以上是关于B. Kefa and Company双指针的主要内容,如果未能解决你的问题,请参考以下文章

B. Bear and Finding Criminals1000 / 双指针

codeforces 580D:Kefa and Dishes

Kefa and Park CodeForces - 580C

A - Kefa and First Steps

CF580C Kefa and Park dfs

CF580D Kefa and Dishes 状压dp