AC:Let's Play Curling

  • 题目
  • 样例
  • 输出
  • 思路

题目

链接:https://ac.nowcoder.com/acm/problem/216012
来源:牛客网


样例

3
2 2
2 3
1 4
6 5
2 5 3 7 1 7
3 4 3 1 10
1 1
7
7

输出

2
3
Impossible

思路

  本题的大体意思是,红队和蓝队在n+m的长度上,红队有n个石头,蓝队有m个,要求求红队尽可能的得分,得分规则是,确定一个c点,红队的某一个石头距离c的位置比蓝队的每一个石头都近,该石头可以得一分。一开始被题目误导,去找点c而没有理解题目的意思,针对该规则,在蓝队两个相邻石头中,红队的石头数量决定红队的分数,我们只要找到蓝队相邻石头中红队石头最多的数量,即为红队的最高得分。我们可以将红队和蓝队的石头距离排一次序,遍历一遍可以得到。
  这里出现了两个问题,第一,蓝队的第一个石头和最后一个石头要确定和红队石头的位置关系,这样我们加入-100和1e9+100,可以保证红队的每个石头都在蓝队的两个石头之间。第二,直接用遍历会超时,我们需要优化算法,用lower_bound( )和upper_bound( )的函数库,利用二分查找的方法在一个排好序的数组中进行查找的,减少时间的花销。

#include <iostream>
#include "algorithm"
using namespace std;int main()
{int n;cin>>n;while(n){int ans=0;int a,b;int A[100005];int B[100005];cin>>a>>b;for(int i=0;i<a;i++)cin>>A[i];for(int i=1;i<=b;i++)cin>>B[i];sort(A,A+a);sort(B+1,B+b+1);B[0]=-100;B[b+1]=1000000100;for(int i=1;i<=b+1;i++){int pl=upper_bound(A,A+a,B[i-1])-A+1;int pr=lower_bound(A,A+a,B[i])-A;int sum=0;for(int j=pl;j<=pr;j++)sum++;ans=max(ans,sum);}if(ans>0)cout<<ans<<endl;elsecout<<"Impossible"<<endl;n--;}return 0;
}

ac Let‘s Play Curling相关推荐

  1. 第 45 届国际大学生程序设计竞赛(ICPC)亚洲区域赛(南京)签到题K Co-prime Permutation,L Let‘s Play Curling

    序 emmm因为没时间补题(虽然签到有四题),所以只能先放两个签到. 这是比赛链接:https://ac.nowcoder.com/acm/contest/10272 这是题解链接:2020年ICPC ...

  2. POJ 3009 Curling 2.0(深度优先搜索+剪枝)

    POJ 3009  Curling 2.0 题目大意: 在一块光滑的h*w的矩形平面上,有若干个障碍物,用1表示以及空格用0表示.现在有一个小球在平面上的数字2的地方,通过抛掷这个小球,使其达到数字3 ...

  3. Curling 2.0{

    题目 Curling 2.0 Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 22417   Accepted: 9100 D ...

  4. POJ 3009 Curling 2.0-DFS

    Curling 2.0 题意 就像最强大脑里的一个游戏,从当前位置移动,撞到障碍物后才会停止(所以有可能会冲出地图姐界面),障碍物被撞后会消失,求到达终点的最短路径. 但不同的是,如果路径上可以通过终 ...

  5. Aho-Corasick 多模式匹配算法(AC自动机) 的算法详解及具体实现

    多模式匹配 多模式匹配就是有多个模式串P1,P2,P3-,Pm,求出所有这些模式串在连续文本T1-.n中的所有可能出现的位置. 例如:求出模式集合{"nihao","ha ...

  6. 【BZOJ2434】[NOI2011]阿狸的打字机 AC自动机+DFS序+树状数组

    [BZOJ2434][NOI2011]阿狸的打字机 Description 阿狸喜欢收藏各种稀奇古怪的东西,最近他淘到一台老式的打字机.打字机上只有28个按键,分别印有26个小写英文字母和'B'.'P ...

  7. AC自动机算法及模板

    AC自动机算法及模板 2016-05-08 18:58 226人阅读 评论(0) 收藏 举报  分类: AC自动机(1)  版权声明:本文为博主原创文章,未经博主允许不得转载. 目录(?)[+] 关于 ...

  8. zoj-3228 Searching the String AC自动机

    用一个val数组记录每一个单词结尾对应的位置,pos数组记录某个节点的深度(其实就是记录单词的长度的),然后用一个op数组记录一下每一个单词对应的询问方式,主要是查询分为了可重叠和不可重叠,不可重叠的 ...

  9. HDU 3065病毒侵袭持续中 AC自动机

    题意很明了,就是找每个匹配串在文本中出现的次数,并且根据题意可以可以有重复部分. 所以这个题与板子不同的地方就是查找的一部分. 还有就是多组输入!!! /*┆ ┏┓ ┏┓ ┆┆┏┛┻━━━━━━┛┻┓ ...

最新文章

  1. 【ACM】连续出现的字符
  2. 导致美国大范围网络瘫痪的Mirai僵尸网络
  3. Cocos2d-x和时间有关的代码
  4. android json mysql_Android通过json向MySQL中读写数据的方法详解【读取篇】
  5. 2018 KubeCon + CloudNativeCon完美落幕,行云献力
  6. SpringBoot三招组合拳,手把手教你打出优雅的后端接口
  7. Kuboard云原生管理工具
  8. img默认图片的问题
  9. 新书《Ext JS 4.2 实战》终于出炉了
  10. ArcMAP 空间连接和相交工具使用
  11. 4月19 ubuntu防火墙
  12. 实时操作系统分类、特点及实现原理
  13. 替代之忧:只有惶者才有可能成为王者
  14. ARM学习之看门狗定时器
  15. JavaScript高级编程——BOM
  16. 【Unity3D基础2-5】Unity3D本地坐标系与世界坐标系
  17. FTP 在局域网搭建ftp服务器-共享文件资料
  18. 2019,华为一号文
  19. 《羊了个羊》还在火!创始人被制成展牌,竟成母校招生“活广告”?
  20. 大型游戏后台实践浅谈

热门文章

  1. html背景自动切换带滚动,利用CSS固定背景交替实现视差滚动效果
  2. 未来十年,交易场景,将由刷脸支付全面构建!
  3. 脉宽调制(PWM)的基本原理及其应用实例
  4. 每月一书(202202): 《从零开始做自媒体》
  5. windows下 MikTex的安装和初步使用
  6. 51单片机的一点感想
  7. Windows 快捷方式
  8. c语言将时速转换成配速,都是速度指标,为何跑步用“配速”而非“时速”?3个原因请明白...
  9. text html叫什么意思,text是什么意思_text是什么意思
  10. 如何重新发明短信息这个古老的轮子