梯田AGAIN

Time Limit: 5000 MS Memory Limit: 65536 KB
Total Submissions: 95 Accepted: 21

Description

大家还记得去年的梯田吗?土豪YZK在一块小岛上有着一大片n*m的梯田,每块1*1的田地都有它的高度。奴隶们不甘被YZK剥削,他们联合起来决定发动一场海啸淹掉YZK的部分梯田。

奴隶们去年尝试了一下,结果发现,由于土质太过松软,水能够透过土地渗入到相邻的梯田,即对于海啸高度h,梯田中所有小于等于h的土地都会由于土质松软而被被淹没。

现在给你一个n*m的矩阵,代表梯田中每块田地的高度。然后给定q个询问,每个询问给定一个海啸高度h,问在此高度下,不被淹没的梯田数量是多少。

Input

第一行一个整数T,表示测试数据组数。

对于每组测试数据:

第一行三个数字n,m,q,表示梯田的行数,列数和询问数。

之后n行,每行m个数字,表示每块田地的高度,梯田高度不大于1000000。

之后q行,每行给出一个海啸高度h,问大于这个高度的梯田有多少块。

0<T<20。

0<n,m<=200。

0<=q<1000。

0<=h<=1000000.

Output

对于每个询问,给出一个整数,表示大于这个海啸高度的梯田数量。

Sample Input

2
2 2 2
1 2
3 4
2
3
2 3 3
1 2 3
3 4 5
0
4
5

Sample Output

​2
1
6
1
0

Hint

经测试,此题存在卡输入输出问题,现将时限修改,在此对被卡的同学表示歉意。
另外,由于测评环境为xp,取消对stdio同步对流式输入输出效率可能是不起作用的,请大家务必注意。若怀疑某题存在卡IO的可能,请使用C式io函数或者用io加速外挂进行Io操作。
题解:这题题意写的很清楚,可是要注意一点,要是每次都普通查询操作那么就会超时,此题我是放在了一维数组,然后二分查找实现的,个人觉得此代码写的并不完美,欢迎各位朋友提出宝贵改进意见
#include <iostream>
#include <algorithm>
#include <cstdio>using namespace std;int a[40010], s;int search(int start, int end, int key)
{int mid, pos = 0;while (start < end){mid = (start + end) / 2;if (a[mid] > key) {end = mid;pos = end;}else {start = mid + 1;pos = start;}}return pos;
}int main(int argc, char const *argv[])
{int T, n, m, q, h, i, j;scanf("%d", &T);while (T--){scanf("%d%d%d", &n, &m, &q);s = n * m;for (i=0; i<s; i++)scanf("%d", &a[i]);sort(a, a+s);while (q--){scanf("%d", &h);if (h < a[0]) printf("%d\n", s);else if (h > a[s-1]) printf("%d\n", 0);else printf("%d\n", s - search(0, s-1, h));}}return 0;
}

安徽省2016“京胜杯”程序设计大赛_D_梯田AGAIN相关推荐

  1. HFUT 1357.梯田AGAIN(安徽省2016“京胜杯”程序设计大赛 D)

    梯田AGAIN Time Limit: 1000 MS Memory Limit: 65536 KB Total Submissions: 23 Accepted: 8 Description 大家还 ...

  2. 安徽省2016“京胜杯”程序设计大赛_C_箭无虚发

    箭无虚发 Time Limit: 1000 MS Memory Limit: 65536 KB Total Submissions: 128 Accepted: 21 Description JH苦练 ...

  3. 安徽省2016“京胜杯”程序设计大赛_K_纸上谈兵

    纸上谈兵 Time Limit: 1000 MS Memory Limit: 65536 KB Total Submissions: 3 Accepted: 1 Description     战国时 ...

  4. 安徽省2016“京胜杯”程序设计大赛_J_YZK的大别墅

    YZK的大别墅 Time Limit: 1000 MS Memory Limit: 65536 KB Total Submissions: 24 Accepted: 12 Description 土豪 ...

  5. 吉首大学第七届“新星杯”程序设计大赛---补题概况

    吉首大学第七届"新星杯"程序设计大赛---补题http://120.78.162.102/contest.php?cid=1332 先来发图片...(唉...AC九道,就A不动了, ...

  6. 我校第一届“达内杯”程序设计大赛决赛成功举办

    4月17日晚七点,江苏理工学院第一届"达内杯"程序设计大赛决赛如期举行.本次大赛由江苏理工学院csdn高校俱乐部举办,达内集团无锡总部全程赞助.本次大赛吸引了全院大一.大二.大三七 ...

  7. 重庆11中学校计算机比赛,重庆大学第十七届“树声前锋杯”程序设计大赛成功举办...

    为培育拔尖创新人才,推进"新工科"专业建设和"双一流"建设,加强学生创新创业教育,培养学生创新精神和实践能力,共青团重庆大学委员会.教务处.党委学生工作部.计算 ...

  8. 【蓝桥杯程序设计大赛感想】 一路艰辛 一路收获

    故事开始: 2014年来到大学,第一时间就听闻蓝桥杯,再听闻这个比赛全国总决赛的比赛地点是北京,我内心中瞬间涌现出一个信念:北京我是去定的了! 我中职读的是计算机网络专业,期间自学了C语言,怀着试一试 ...

  9. 2016湘潭大学“长城信息杯”程序设计邀请赛总结

    一篇迟到的总结 Created at  2016-6-10,12:10; 本人作为一枚大一菜鸟有幸参加2016年度中南地区程序邀请赛(名字好霸气的样子),按理来说学校的不会派这么水的队伍参赛的,可能是 ...

最新文章

  1. ubuntu18.04.4 没有声音
  2. 如何让SVN提交时候强制添加注释
  3. xrdp安装包linux,linux xrdp0.6 安装
  4. linux cdig 工具,linux常用工具su与su -
  5. Winform中使用MQTTnet实现MQTT的服务端和客户端之间的通信以及将订阅的消息保存到文件
  6. MySQL事务控制语句
  7. 【快讯】呼伦贝尔市人民医院利用Oracle APEX快速开发预检分诊系统
  8. 2021年度移动广告流量观察白皮书
  9. LeetCode 46. Permutations
  10. linux中pstree命令的含义,pstree命令--Linux命令应用大词典729个命令解读
  11. 七个办法只有一个有效:200 PORT command successful. Consider using PASV.425 Failed to establish connection.
  12. Fitts’ Law / 菲茨定律
  13. Spring系列缓存注解@Cacheable @CacheEvit @CachePut 使用姿势介绍
  14. 关于AOSP 与AOKP
  15. 微信小程序tabBar改变图片大小方法
  16. unity 四元数旋转各元素值的计算方法
  17. 大航海时代: 流行5掠夺篇
  18. 硬盘开盘数据恢复-不能不学的硬盘基本知识
  19. Error from chokidar (C:\): Error: EBUSY: resource busy or locked, lstat ‘D:\DumpStack.log.tmp
  20. 华为服务器开启xmp后系统信息会变吗,XMP是什么?教你开启XMP瞬间提升内存性能...

热门文章

  1. camtasia 视频录制教程
  2. 区块链与大数据的整合,未来必然趋势
  3. 擦窗机器人语音芯片方案 WT588F02B-8S 支持OTA远程升级
  4. js动态给table表格的行添加删除线
  5. 相关系数和p值的含义
  6. eip系统服务器,eip系统
  7. ORACLE 10.2.0.4 rac for aix query gv$instance with ORA-12850
  8. 春招冲刺Day2 [操作系统] --来聊聊死锁呗?
  9. 如何使用Unity ARFoundation和XR Interaction Toolkit对Prefab进行选择、缩放、移动、和旋转操作?
  10. JsonResult返回值处理