Tallest Cow(差分)

题意:n个牛站一排,两头牛能够看见的条件是他们之间的牛都比他们小,我们知道第p头牛的高度是H,求每头牛的最大高度可能是多少

题意解析:两头牛能看见,则他们之间的牛至少比他们少1,所以用一个数列表示两头牛之间都减去1,所以这个可以用差分来表示,最后再求前缀和,非在线的话可以用差分来,在线的话就要用树状数组。

#include<iostream>
using namespace std;
int main()
{
	int a,b,n,h;
	for(int i=1;i<=n;i++){
		cin>>a>>b;
		//d[a+1]-- d[b]++
	} 
	//求d的前缀和再加上h 
	
	return 0;
 } 
发布了6 篇原创文章 · 获赞 6 · 访问量 161

猜你喜欢

转载自blog.csdn.net/weixin_43626741/article/details/104362525