原题http://acm.hdu.edu.cn/showproblem.php?pid=4907

Task schedule

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 692    Accepted Submission(s): 334

Problem Description
有一台机器,而且给你这台机器的工作表,工作表上有n个任务,机器在ti时间运行第i个任务,1秒就可以完毕1个任务。
有m个询问,每一个询问有一个数字q,表示假设在q时间有一个工作表之外的任务请求,请计算何时这个任务才干被运行。
机器总是依照工作表运行,当机器空暇时马上运行工作表之外的任务请求。
Input
输入的第一行包括一个整数T, 表示一共同拥有T组測试数据。

对于每组測试数据:
第一行是两个数字n, m,表示工作表里面有n个任务, 有m个询问;
第二行是n个不同的数字t1, t2, t3....tn,表示机器在ti时间运行第i个任务。
接下来m行,每一行有一个数字q,表示在q时间有一个工作表之外的任务请求。

特别提醒:m个询问之间是无关的。

[Technical Specification]
1. T <= 50
2. 1 <= n, m <= 10^5
3. 1 <= ti <= 2*10^5, 1 <= i <= n
4. 1 <= q <= 2*10^5

Output
对于每个询问,请计算并输出该任务何时才干被运行,每个询问输出一行。
Sample Input
1 5 5 1 2 3 5 6 1 2 3 4 5
Sample Output
4 4 4 4 7
//本题要是直接做会超时,所以採用预处理的方法。听说二分也能够,只是没有试过,感觉预处理已经挺快的了
//思路,开个数组,代表在i秒进行额外工作的时间。非常明显,在预处理的时候要从后往前找
//假设该时间该机器本身不须要工作,那么就吧时间不断的缩小
include <stdio.h>
#include <stdlib.h>
#include <malloc.h>
#include <limits.h>
#include <string.h>
#include <string>
#include <math.h>
#include <algorithm>
#include <iostream>
#include <stack>
#include <queue>
#include <deque>
#include <vector>
#include <set>
#include <map>
using namespace std;
#define N 100000 + 10
#define M 200000 + 10
int vis[M];
int take[M];int main(){int T,n,m;while(~scanf("%d",&T)){while(T--){memset(vis,0,sizeof(vis));memset(take,0,sizeof(take));scanf("%d%d",&n,&m);int i,num;for(i=1;i<=n;i++){scanf("%d",&num);vis[num] = 1;}int mark;for(i=200000;i>=1;i--){take[i] = i;if(vis[i] == 0){mark = i;}else{take[i] = mark;}}int t;for(i=1;i<=m;i++){scanf("%d",&t);printf("%d\n",take[t]);}}}return 0;
}

HDU4907小技巧相关推荐

  1. latex 公式不居中_LaTex小技巧,祝你论文一臂之力!

    LaTex作为常用的排版系统,已深入到大家的工作和学业中.但是很多小伙伴反馈说:LaTex公式编辑复杂.表格处理麻烦等.为此,我们特别收集了一些LaTex的小技巧,希望大家都可以get到! 公式篇 首 ...

  2. 中文 查询_查询商标,商标注册通过分析的几个小技巧

    前面我们说到了商标注册前,通常情况下一定要进行商标查询,要进行注册通过可行性分析.只有这样才能保证基本的商标注册通过率,不至于无畏的浪费我们的时间和金钱. 1.我们在进行商标查询,输入要查询的商标时, ...

  3. 日常安排php,PHP日常开发小技巧

    PHP日常开发小技巧 导语:PHP语言中,如果你懂得一些开发技巧,那么对你学PHP,会有很大的帮助.下面的是百分网小编为大家整理的PHP日常开发小技巧,希望对你能有所帮助. PHP批量取得checkb ...

  4. 敲代码括号技巧_阅码神奇Souceinsight使用小技巧总结

    /****与SI的初遇****/ 对于大部分人第一次使用SI来说应该是对原IDE集成开发环境有很大的抱怨吧,确实我也一样,对于做嵌入式开发使用各种集成开发工具,比如说Keil,IAR等等,可能还有更加 ...

  5. eplan文本怎么换行_EPLAN几个使用的小技巧,非常有用

    Eplan P8 的一些小技巧 1. 页名后缀由字母变数字 ? 选项 - 设置 - 项目 - 管理 - 页 - 页名 - 子页标识 2. 修改自动连接电缆颜色 ? 选项 - 层管理 - 符号图形 3. ...

  6. rust熔炉怎么带走_Rust游戏中12个实用小技巧,包含无伤下坠、直梯爬楼

    Rust是一款第一人称生存网络游戏,有点像野外求生,但这款游戏内容则更加丰富.刺激.血腥. 在这款游戏中玩家的第一任务就是活下来,而想要活下来你将要接受饥饿.干渴.寒冷等.游戏中玩家需要建造自己的庇护 ...

  7. ASP.NET2.0 GridView小技巧汇粹

    1)GridView绑定数据源控件,需要有编辑和删除选项按钮时,数据源控件必须提供SQL操作语句或存储过程调用,一般,我的推荐做法是,使用无意义的SQL语句或存储过程来使GridView的编辑和删除按 ...

  8. ps背景不变换字_分享五个超级实用的PS小技巧

    今天西瓜给大家分享五个PS的小技巧,特别容易上手操作而且很实用! 1.利用剪切蒙版给衣服加图案 首先第一步我们打开素材,使用快速选择工具,把裙子选出来,然后Ctrl+J复制出来 打开花纹背景素材,Ct ...

  9. window.open的小技巧分享(转)

    今天再次谈起window.open是因为发现了一个比较好玩的小技巧,详细内容我们稍后详细说明. 聊到window.open,不得不说明一下他的使用方法,主要有两种形式: window.open()没有 ...

最新文章

  1. 解决在IOS系统及微信中audio、video不能自动播放的问题
  2. 对话农民丰收节交易会-林裕豪:从玉农业2021新年贺词
  3. 卡号身份证过期的影响
  4. robocopy file backup script
  5. 前端node 和vue开发之环境搭建
  6. Scala 语法基础
  7. All Roads Lead to Rome (30)
  8. 访问:source.android.com和developer.android.com
  9. CSS 7阶层叠水平
  10. c语言实现简易图书管理系统
  11. 【GIS】GIS矢量空间分析(上)
  12. 帝国CMS7.5仿可可礼物网漂亮大气淘宝客网站源码 带手机版+火车头采集
  13. java 网段_java IP地址网段计算的示例代码
  14. 计算机专业考研的好学校排名2015,计算机类专业考研最好的学校排名
  15. 裁员潮?忍不住偷出阿里P8大舅哥整理的2022年春招内部面试题
  16. 工作记录--使用FFmpeg将一个视频文件中音频合成到另一个视频中
  17. 代谢组学分析平台都有什么仪器?
  18. EF Core 既生,何生
  19. 上海极家精装提醒你,买地板这些事一定知道
  20. 【数据结构】 医院选址

热门文章

  1. 1472: C语言实验题――逆置正整数
  2. c++调用python找不到py文件的可能原因
  3. 搭建cacti监控平台
  4. 关于子网掩码的是是非非
  5. css 3小时从入门到略通
  6. RIP协议路由环路及解决方案
  7. 求出所有这些四位数是素数的个数cnt,再把所有满足此条件的四位数依次存入数组b中,然后对数组b中的四位数按从小到大的顺序进行排序
  8. androidq获取文件正式路径_android Q 新特性
  9. Go工程化 - 手摸手带你理解依赖注入
  10. windows 自动备份mysql方案