题解:

维护比这个大的第二大

代码:

#include<cstdio>
#include<algorithm>
#include<queue>
#include<cstring>
using namespace std;
int i,j,n,m,q,c;
struct node
{
int a,b;
}p[];
bool cmp(node a,node b)
{
if(a.a!=b.a) return a.a>b.a;
return a.b>b.b;
}
int sum[];
priority_queue<int, vector<int>, greater<int> > que;
int main()
{
while (~scanf("%d%d%d",&n,&m,&q))
{
while (!que.empty())que.pop();
for (i=;i<m;i++)scanf("%d%d",&p[i].a,&p[i].b);
sort(p,p+m,cmp);
sum[]=;
int a1,a2;
for (i=n,j=;i>=;i--)
{
for (;j<m;j++)
{
if (i<=p[j].a) que.push(p[j].b);
else break;
}
if ((int)que.size()<)
{
sum[i]=;
continue;
}
a1=que.top();
que.pop();
a2=que.top();
que.pop();
que.push(a1);
que.push(a2);
if(i-a2<) sum[i]=;
else sum[i]=i-a2;
}
while (q--)
{
scanf("%d",&c);
printf("%d\n",sum[c]);
}
}
return ;
}

zoj3888的更多相关文章

  1. zoj3888 找第二大

    题目简化后最终要求的就是第二大的数.但是由于数据较大,不能直接求.可以先预处理,求出所有情况. #include<stdio.h> #include<string.h> #in ...

  2. [主席树 强制在线]ZOJ3888 Twelves Monkeys

    题意:有n年,其中m年可以乘时光机回到过去,q个询问 下面m行,x,y 表示可以在y年穿越回x年, 保证y>x 下面q个询问, 每个询问有个年份k 问的是k年前面 有多少年可以通过一种以上($\ ...

随机推荐

  1. linux性能分析工具之火焰图

    一.环境 1.1 jello@jello:~$ uname -a Linux jello 4.4.0-98-generic #121-Ubuntu SMP Tue Oct 10 14:24:03 UT ...

  2. ISSCC 2017论文导读 Session 14:A 0.62mW Ultra-Low-Power Convolutional-Neural-Network Face-Recognition Pro

    A 0.62mW Ultra-Low-Power Convolutional-Neural-Network Face-Recognition Processor and a CIS Integrate ...

  3. 【maven】在IDEA上 使用maven进行打包时报错:Failed to execute goal org.apache.maven.plugins:maven-javadoc-plugin:2.10.3:jar

    报错内容如下: [INFO] ------------------------------------------------------------------------ [INFO] BUILD ...

  4. UVa 11039 设计建筑物

    https://vjudge.net/problem/UVA-11039 题意: 有n个绝对值各不相同的非0整数,选出尽量多的数,排成一个序列,使得正负号交替且绝对值递增. 思路:正数存一个数组,负数 ...

  5. UVa 1660 电视网络(点连通度+最小割最大流+Dinic)

    https://vjudge.net/problem/UVA-1660 题意:给出一个无向图,求出点连通度.即最少删除多少个点,使得图不连通. 思路: 如果求线连通度的话,直接求个最大流就可以了.但这 ...

  6. Git operate

    新建远程分支和删除 https://www.jianshu.com/p/ea1dab2de419 使用git branch -a查看所有分支 远程先开好分支然后拉到本地 git checkout -b ...

  7. (转)Linux I/O 调度方法

    Linux I/O 调度方法 转自https://blog.csdn.net/theorytree/article/details/6259104 操作系统的调度有 CPU调度    CPU sche ...

  8. python 插值查找

    def binary_search(lis, key): low = 0 high = len(lis) - 1 time = 0 while low < high: time += 1 # m ...

  9. Java中的hashcode方法

    一.hashCode方法的作用 对于包含容器类型的程序设计语言来说,基本上都会涉及到hashCode.在Java中也一样,hashCode方法的主要作用是为了配合基于散列的集合一起正常运行,这样的散列 ...

  10. [ios][map]自定义地图标注

    参考:http://blog.csdn.net/mad1989/article/details/8794762 ios 一步一步学会自定义地图吹出框(CalloutView)-->(百度地图,高 ...