题意很好理解,主要就是n的范围是1e9,数组的话是存不下的。这个时候可以想到用map或vector来代替数组发挥作用。
废话不多说,上代码:
map:

#include<iostream>
#include<stdlib.h>
#include<stdio.h>
#include<bits/stdc++.h>
using namespace std;
const int N = 1e5+10;
map<int , bool> a;
int main()
{int t , n , s , k;scanf("%d",&t);while(t--){scanf("%d %d %d",&n,&s,&k);a.clear();while(k--){int d;scanf("%d",&d);a[d] = 1;}if(a[s]==0){printf("0\n");continue;}else{int i = s , j = s;while(i>=1&&a[i]==1){i--;}while(j<=n&&a[j]==1){j++;}if(i==0){printf("%d\n",j-s);}else if(j==n+1){printf("%d\n",s-i);}else if((s-i)<=(j-s)){printf("%d\n",s-i);}else{printf("%d\n",j-s);}continue;}}return 0;
}

vector:

#include<iostream>
#include<stdlib.h>
#include<vector>
#include<bits/stdc++.h>
using namespace std;
const int N = 1e5+10;
vector<int> a;
int main()
{int n , k , s , t;cin >> t;while(t--){cin >> n >> s >> k;a.clear();a.resize(k);//数组a开到这么大 for(int i = 0 ; i < k ; i++){int d;cin >> d;a.push_back(d);}for(int i = 0 ; i <= k ; i++){if((s-i)>=1&&find(a.begin(),a.end(),s-i)==a.end()){cout << i << endl;break;}if((s+i)<=n&&find(a.begin(),a.end(),s+i)==a.end()){cout << i << endl;break;}}}return 0;
}

cf. ConneR and the A.R.C. Markland-N相关推荐

  1. ConneR and the A.R.C. Markland-N CodeForces - 1293A(暴力)

    Sakuzyo - Imprinting A.R.C. Markland-N is a tall building with n floors numbered from 1 to n. Betwee ...

  2. 【汇编语言】状态标志符(CF/OF/SF/ZF)在运算(ADD/SUB/ADC/SBB)过程中的响应变化

    目录 各类运算时状态标志的响应变化 标志符在各种`ADD`运算下的响应情况 标志符在各种`SUB`运算下的响应情况 借助标志符实现多位数之间运算 `ADC`(add with carry)带进位加法指 ...

  3. 基础算法 —— 模拟思维

    [概述] 模拟,是根据实际问题建立模型,模拟实际按程序走一遍,最终求出答案. 思维,则是与逻辑思维有关,其需要针对题意.数据范围等抽丝剥茧抽离出有用的信息,从而得出一个结果. 对于一般的模拟,直接根据 ...

  4. Archlinux 下的 VMWare Workstation 维护笔记

    印象中 Archlinux 下的 VMWare Workstation 总是出问题, 因此写这个帖子, 记录出问题时间/原因/解决方案. PS: 每次更新内核后可能需要重新编译 vmware 的内核模 ...

  5. 基于虚拟账号的邮件系统

    按照如下图所以创建基于虚拟账号的邮件系统: 如上图所示:客户端登录邮件系统需要经过cyrus-sasl函数库账号的认证,但是cyrus-sasl无法调用mysql,所以必须安装courier-auth ...

  6. 配置kali linux

    在7月底的时候,安全加介绍Fireeye出品的 免费恶意软件分析工具FlareVM,还可进行逆向工程和渗透测试 .今天是看到绿盟科技的一篇介绍Kali Linux配置的文章,这个工具也进入了 渗透测试 ...

  7. UA PHYS515A 电磁理论V 电磁波与辐射7 运动点电荷的辐射

    UA PHYS515A 电磁理论V 电磁波与辐射7 运动点电荷的辐射 实际问题中辐射的source都是比较复杂的charge density与currency density,但作为比较简单直观易于理 ...

  8. Postfix+dovecot+extmail+sasl+mysql源码安装手册

    dovecot+postfix+courier-authlib+cyrus-sasl+extmail+extman安装配置 需要软件 Dovecot 客户端收发邮件(110/995/143/993等) ...

  9. Nginx 模块开发(1)—— 一个稍稍能说明问题模块开发 Step By Step 过程

    1. Nginx 介绍 Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,它的发音为"engine X", 是一个高性能的HTTP和反向代理服务器,同时也是一个IMAP/POP ...

  10. 聊聊jdk http的HeaderFilter

    序 本文主要研究一下jdk http的HeaderFilter. FilterFactory java.net.http/jdk/internal/net/http/FilterFactory.jav ...

最新文章

  1. 深度学习几种典型架构
  2. 自定义spring schema简化与canal集成
  3. 43、Power Query-函数综合应用
  4. main java game,playgame 一个JAVA编写的飞行小游戏,有基本完整的 框架,适合初学者参照学习 Other s 其他 238万源代码下载- www.pudn.com...
  5. HDU 4893 线段树
  6. flutter进行自动编译操作步骤
  7. 应山有学计算机编程吗,周应山-武汉纺织大学材料科学与工程学院
  8. JDBC-简单连接Oracle Database
  9. 利用工具,促进有效沟通
  10. XenCenter 创建 New VM
  11. java和eova的关系_Eova 1.2 正式版,Java Web 快速开发平台
  12. 跟着 Cell 学作图 | 火山图进阶版
  13. 求1到n的所有质数(素数)
  14. 分享一些光纤模块接口类型有用信息给大家
  15. Windows10系统桌面美化,定制自己的专属桌面.
  16. 软件分享系列之【AE 下载安装】并持续分享中...
  17. 洛谷P5594-【XR-4】模拟赛
  18. 信息无障碍研究机构---企业
  19. IObit Uninstaller安装
  20. 读稻盛先生的《活法和干法》的十点灵感

热门文章

  1. 廊坊金彩教育:怎么优化标题
  2. 电子护照阅读器现身出入境办证大厅
  3. java毕业设计菜鸟驿站快递分发系统Mybatis+系统+数据库+调试部署
  4. JS for循环练习题
  5. 用MicroPython开发ESP32-文件传输工具-ampy
  6. 智能营销模型-Uplift Model详解及Python使用
  7. 湖北省仙桃市谷歌高清卫星地图下载
  8. 无人驾驶刚刚开始的未来
  9. 无线鼠标 跨计算机控制,终于明白无线鼠标如何设置
  10. 【面试题】单链表的操作1