Times
【问题描述 】
小 y 作为一名资深的 dotaer,对视野的控制有着深刻的研究。
每个单位在一段特定的时间内会出现在小 y 的视野内,除此之外的时间都在
小 y 看不到的地方。在小 y 看来,视野内的单位数量越多,他就越安全,因为这
意味着有可能藏在阴影中的单位就越少。
现在,小 y 已经知道了每个单位会在什么时候出现在视野内,他想知道,在
一段时间内,总共有多少个单位出现在他的视野内过。
【输入格式】
第一行有两个整数 n,m,表示一共有 n 个单位,而小 y 有 m 个问题。
接下来 n 行,每行两个数 a,b,表示这个单位 a 秒时出现在小 y 的视野内,
出现了 b 秒。
接下来 m 行,每行两个整数 x,y,表示从 x 秒开始,经过 y 秒,其中有多
少个单位出现过。
【输出格式】
m 行,即对于小 y 提出的每个问题的答案。
【输入样例 1】
3 2
2 5
0 10
5 8
0 6
8 2
【输出样例 1】

3
2
【输入样例 2】
1 2
0 10
9 1
10 1
【输出样例 2】
1
0
【数据范围】
30%的数据:
1<=n,m<=1000
100%的数据:
1<=n,m<=200000
1<=x,y,a,b<=maxlongint

/*
* @Problem: Times
* @Author: shenben
* @Date: 2017-01-25 20:42:59
* @Analyse:
(1)如果[a,b)和[c,d)不相交
则①要么b<=c;②要么d<=a
(2)对于一个询问区间[c,d)
我们统计对n个已经给出的区间[a,b)出现这两种情况的次数
答案就是n-次数
*/
#include<cstdio>
#include<algorithm>
using namespace std;
#define O3 __attribute__((optimize("O3")))
#define IN inline
O3 IN int read(){
int x=,f=;char ch=getchar();
while(ch<''||ch>''){if(ch=='-')f=-;ch=getchar();}
while(ch>=''&&ch<=''){x=x*+ch-'';ch=getchar();}
return x*f;
}
const int N=2e5+;
struct node{
int pos,t,id;
node(){}
node(int pos,int t,int id):pos(pos),t(t),id(id){}
bool operator <(const node &a)const{
return pos==a.pos?t<a.t:pos<a.pos;
}
}e[N<<];
int n,m,cnt,ans[N],c[];
O3 int main(){
freopen("times.in","r",stdin);
freopen("times.out","w",stdout);
n=read();m=read();
for(int i=,x,y;i<n;i++){
x=read();y=read();
e[cnt++]=node(x,,-);
e[cnt++]=node(x+y,,-);
}
for(int i=,x,y;i<m;i++){
x=read();y=read();
e[cnt++]=node(x,,i);
e[cnt++]=node(x+y,,i);
}
sort(e,e+cnt);
for(int i=;i<cnt;i++){
c[e[i].t]++;
if(e[i].t==) ans[e[i].id]+=c[];
if(e[i].t==) ans[e[i].id]-=c[];
}
for(int i=;i<m;i++) printf("%d\n",ans[i]);
return ;
}

Times[2017-01-25at JiNan]的更多相关文章

  1. 【web开发 | 移动APP开发】 Web 移动开发指南(2017.01.05更新)

    版本记录 - 版本1.0 创建文章(2016.12.30) - 版本1.1 更正了hybird相关知识:增加了参考文章(2017.01.05): + Web APP更正为响应式移动站点与页面,简称响应 ...

  2. Mysql Innodb 性能参数设置 https://www.rathishkumar.in/2017/01/how-to-allocate-innodb-buffer-pool-size-in-mysql.html

    参考原文: https://www.rathishkumar.in/2017/01/how-to-allocate-innodb-buffer-pool-size-in-mysql.html 查看系统 ...

  3. java编程如何实现2017-01-16 22:28:26.0这样的时间数据,转换成2017:01:16:22:28:26这样的时间数据

    不多说,直接上干货! timereplace.java package zhouls.bigdata.DataFeatureSelection.util; /* * 这个程序,是用来做补充的 */ p ...

  4. TIOBE.2017.01最新编程语言排行榜

    Jan 2017     Jan 2016     Change     Programming Language     Ratings     Change1    1        Java   ...

  5. 2017 01 16 校内小测 ZXR专场

    我等蒟蒻爆零之后,问LincHpin大爷:“此等神题可有甚么来头?” LincHpin:“此三题皆为当年ZXR前辈所留.” 固名之,ZXR专场,233~~~ T1 勤奋的YouSiki 这个题在BZO ...

  6. IntelliJ IDEA 2017.01配置jdk和tomcat

    之前开发Web项目都是用myeclipse或者eclipse,最近想用IDEA这个编辑器去配置一个Web项目,因为是新手,加上对界面的操作不熟练,所以在配置的过程中遇到了一些难题.最后配置成功,并且可 ...

  7. Chetsheet: 2017 01.01 ~ 01.31

    Web TypeScript: the missing introduction Async HTTP API and service bus Optimizing the Performance o ...

  8. ROS_Kinetic_01 在ubuntu 16.04安装ROS Kinetic 2017.01更新

    ROS_Kinetic系列学习(一),在ubuntu 16.04安装ROS Kinetic. Celebrating 9 Years of ROS! ubuntu16.04已经发布半年多了,ROS的K ...

  9. EZ 2017 01 07 t

    这名字诡异(然而就是这样) 这次主要是yekehe和yu‘ao都来了,所以很开心的讨论(上了200). 但是,yu’ao dalao又AK了!(666666) 不过总体难度也不高,主要是T3没思路. ...

  10. 2017/01/20 学习笔记 关于修改和重打jar包

    背景 客户提供了jar包,但发现db表中缺少一个字段,db追加以后需要修改jar包中的source. 操作  如何修改jar包中的source并重新打一个新的jar包,做了如下操作. ① 开包 解压j ...

随机推荐

  1. ef core 2.1 利用Query Type查询视图

    ef core新加入的功能“Query Type”可以让我们很方便的查询视图而不需要做任何特殊处理.不过在代码上和普通的查询有些不同. 先贴文档:https://docs.microsoft.com/ ...

  2. Codeforces 899 B.Months and Years

    B. Months and Years   time limit per test 1 second memory limit per test 256 megabytes input standar ...

  3. Educational Codeforces Round 39 (Rated for Div. 2) B. Weird Subtraction Process[数论/欧几里得算法]

    https://zh.wikipedia.org/wiki/%E8%BC%BE%E8%BD%89%E7%9B%B8%E9%99%A4%E6%B3%95 取模也是一样的,就当多减几次. 在欧几里得最初的 ...

  4. [深入浅出iOS库]之数据库 sqlite

    一,sqlite 简介 前面写了一篇博文讲如何在 C# 中使用 ADO 访问各种数据库,在移动开发和嵌入式领域也有一个轻量级的开源关系型数据库-sqlite.它的特点是零配置(无需服务器),单磁盘文件 ...

  5. Windows脚本\批处理命令学习笔记

    1.为新建变量赋值: set 变量=值 2.输出变量的值 echo %变量% 3.关闭批处理中命令行的显示(默认是显示命令行的) 在文件開始处增加:echo off 若需又一次显示:echo on 若 ...

  6. linux中read用法

    read在while中的经常用法: root@ubuntu:/var/lib/logrotate :: # cat /etc/cron.daily/logrotate #!/bin/sh # Clea ...

  7. Shell脚本之:数组

    bash支持一维数组,并且没有限定数组的大小,数组元素的下标由0开始编号. 定义数组 在Shell中,用括号来表示数组,数组元素用“空格”符号分割开.定义数组的一般形式为: array_name=(v ...

  8. vector(可变数组) 用于UDP通信

    头文件: #include<vector.h> 然后,声明并初始化vctor数组. vector<char>  str(len); 其中len可以是变量或者常量.(其实用常量就 ...

  9. SQL Server常用系统表

    1.查询当前数据库中的用户表 select *from sysobjects where xtype='U'; 2.获取SQL Server允许同时用户连接的最大数 SELECT @@MAX_CONN ...

  10. DCDC电路电感和电容啸叫的原因

    电感啸叫原因 如果耳朵能听到啸叫(吱吱声),可以肯定电感两端存在一个20HZ-20KHZ(人耳范围)左右的开关电流. 例如DC-DC电路的电感啸叫,由于负载电流过大 DC内部有一个限流保护电路,当负载 ...