题目链接

题意:

  问满足一系列形如ab可以相互看到的约束的所有奶牛的最大身高(最高的编号和高度已给出)

分析:

  首先,这个可以互相看到指的是中间的人比两头的都矮,一条斜线看到的不行,那么其实我们就可以直接默认每个牛都是最高的,然后有一个约束给中间的牛矮一些,最后找到处理后的数据就好了,数据处理方式:线段树or差分,当然这一题差分更快一些。

  然后还有一个问题,就是他还要求b的身高大于等于a的,其实这个和没有一样,因为我们要求的是最大,能不变矮尽量不变,又因为如果有新的约束那么要不完全在a,b之内,要不完全在a,b之外(否则不可能),a,b就有同时改变了。

  然后就是注意去一下重,即两个相同的约束不会使中间的身高改变2或以上(如果用这种方法计算最大)

  最后就是代码。

  

#include <cstdio>
#include <algorithm>
#include <map>
using namespace std;
const int maxn=+;
int c[maxn];
map<pair<int,int>,bool> ma;
int main(){
int n,s,h,m;
scanf("%d%d%d%d",&n,&s,&h,&m);
c[]=h;
int js1,js2;
for(int i=;i<=m;i++){
scanf("%d%d",&js1,&js2);
if(js1>js2)
swap(js1,js2);
if(ma[make_pair(js1,js2)])
continue;
c[js1+]--;
c[js2]++;
ma[make_pair(js1,js2)]=;
}
for(int i=;i<=n;i++){
c[i]=c[i-]+c[i];
printf("%d\n",c[i]);
}
return ;
}

最新文章

  1. IOS关于LKDBHelper实体对象映射插件运用
  2. WCF学习之旅—WCF概述(四)
  3. mongo副本集搭建及服务器复用方案
  4. Linux服务器模型及其对应的程序流程
  5. 关于antlr包删除问题
  6. js中的全选,不选,和反选按钮的设定
  7. ASP.NET MVC Model验证总结【转】
  8. [转] linux中巧用ctrl-z后台运行程序
  9. 响应式布局设置--@media only screen and
  10. 【css】 收藏 纯css打造 mackbook air
  11. [Mugeda HTML5技术教程之2] Mugeda HTML5富媒体平台简介
  12. js动态向页面中添加表格
  13. 成都传智职工high翻竞赛场
  14. 你的第一个AngularJS应用--教程二:基架、建立和測试的工具
  15. 使用websocket-sharp来创建c#版本的websocket服务
  16. 系统API执行没效果,可以检查一下是否与 360安全卫士 有关?!
  17. kaggle-Digit Recognizer
  18. [Bayes] runif: Inversion Sampling
  19. js 中的原型链与继承
  20. 基础系列(6)—— C#类和对象

热门文章

  1. 带你学够浪:Go语言基础系列 - 8分钟学控制流语句
  2. centos6 升级python2.6 到 python2.7
  3. 【LGR-072】回首过去
  4. [CF696D]Legen...
  5. selenium获取图片验证码
  6. python中的importlib包
  7. C# 加密、解密PDF文档(基于Spire.Cloud.SDK for .NET)
  8. 基于node的前端项目编译时内存溢出问题
  9. Zookeeper客户端Apache Curator
  10. @EnableHystrixDashboard注解无法使用情况