【题解】【排序】—— [NOIP2017 普及组] 图书管理员

【题解】【排序】—— [NOIP2017 普及组] 图书管理员

  • [NOIP2017 普及组] 图书管理员
    • 题目背景
    • 题目描述
    • 输入格式
    • 输出格式
    • 输入输出样例
      • 输入 #1
      • 输出 #1
    • 提示
  • 1.思路解析
  • 2.AC代码

[NOIP2017 普及组] 图书管理员

通往洛谷的传送门

题目背景

NOIP2017 普及组 T2

题目描述

图书馆中每本书都有一个图书编码,可以用于快速检索图书,这个图书编码是一个正整数。 每位借书的读者手中有一个需求码,这个需求码也是一个正整数。如果一本书的图书编码恰好以读者的需求码结尾,那么这本书就是这位读者所需要的。 小 D 刚刚当上图书馆的管理员,她知道图书馆里所有书的图书编码,她请你帮她写一个程序,对于每一位读者,求出他所需要的书中图书编码最小的那本书,如果没有他需要的书,请输出 -1

输入格式

第一行,包含两个正整数 n , q n , q n,q,以一个空格分开,分别代表图书馆里 书的数量和读者的数量。

接下来的 n n n 行,每行包含一个正整数,代表图书馆里某本书的图书编码。

接下来的 q q q 行,每行包含两个正整数,以一个空格分开,第一个正整数代表图书馆 里读者的需求码的长度,第二个正整数代表读者的需求码。

输出格式

$ q$ 行,每行包含一个整数,如果存在第 i i i 个读者所需要的书,则在第 i i i 行输出第 i i i 个读者所需要的书中图书编码最小的那本书的图书编码,否则输出 − 1 -1 1

输入输出样例

输入 #1

5 5 
2123 
1123 
23 
24 
24 
2 23 
3 123 
3 124 
2 12 
2 12

输出 #1

23 
1123 
-1 
-1 
-1

提示

数据规模与约定

对于 20 % 20\% 20% 的数据, 1 ≤ n ≤ 2 1 ≤ n ≤ 2 1n2

另有 20 % 20\% 20% 的数据, q = 1 q = 1 q=1

另有 20 % 20\% 20% 的数据,所有读者的需求码的长度均为 1 1 1

另有 20 % 20\% 20% 的数据,所有的图书编码按从小到大的顺序给出。

对于 100 % 100\% 100% 的数据, 1 ≤ n ≤ 1000 , 1 ≤ q ≤ 1000 1 ≤ n ≤ 1000,1 ≤ q ≤ 1000 1n1000,1q1000,所有的图书编码和需求码均不超过 1 0 7 10^7 107

1.思路解析

    直接按照题意,先将数组从小到大排序,然后寻找匹配的图书编码就行了。详见代码。注意,这里可以使用字符串存储,也可以直接使用数字存储,看个人习惯。

2.AC代码

#include<bits/stdc++.h>
using namespace std;
bool cmp(string a,string b)//字符串排序 
{if(a.length()==b.length())return a<b;return a.length()<b.length();
}
int main()
{int n,q;string a[1010];//储存图书码 cin>>n>>q;for(int i=1;i<=n;i++)cin>>a[i];sort(a+1,a+n+1,cmp);for(int i=1;i<=q;i++){int num;string tmp,ans;cin>>num>>tmp;for(int j=1;j<=n;j++){//如果此编号比需求码位数小if(a[j].length()<tmp.length())continue;//提取后面num位的字符 string sub=a[j].substr(a[j].length()-num,a[j].length());if(tmp==sub)//判等 {ans=a[j];break;}}ans==""?cout<<-1:cout<<ans;//输出 puts("");}return 0;
}

喜欢就订阅此专辑吧!

【蓝胖子编程教育简介】
蓝胖子编程教育,是一家面向青少年的编程教育平台。平台为全国青少年提供最专业的编程教育服务,包括提供最新最详细的编程相关资讯、最专业的竞赛指导、最合理的课程规划等。本平台利用趣味性和互动性强的教学方式,旨在激发孩子们对编程的兴趣,培养他们的逻辑思维能力和创造力,让孩子们在轻松愉快的氛围中掌握编程知识,为未来科技人才的培养奠定坚实基础。

欢迎扫码关注蓝胖子编程教育
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/59466.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

WPF+MVVM案例实战(十七)- 自定义字体图标按钮的封装与实现(ABC类)

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 1、案例效果1、按钮分类2、ABC类按钮实现1、文件创建2、字体图标资源3、自定义依赖属性4、按钮特效样式实现 3、按钮案例演示1、页面实现与文件创建2、依赖注入3 运…

《Qwen2-VL》论文精读【下】:发表于2024年10月 Qwen2-VL 迅速崛起 | 性能与GPT-4o和Claude3.5相当

1 前言 《Qwen2-VL》论文精读【上】&#xff1a;发表于2024年10月 Qwen2-VL 迅速崛起 | 性能与GPT-4o和Claude3.5相当 上回详细分析了Qwen2-VL的论文摘要、引言、实验&#xff0c;下面继续精读Qwen2-VL的方法部分。 文章目录 1 前言2 方法2.1 Model Architecture2.2 改进措施2…

TypeScript延迟执行工具类

TypeScript延迟执行工具类 在前端开发中&#xff0c;我们经常需要处理一些延迟执行、防抖和节流的场景。今天介绍一个实用的Delay工具类&#xff0c;它提供了这些常用的延迟执行功能。 文章目录 TypeScript延迟执行工具类0、完整代码1. 基础延迟执行sleep方法execute方法 2. 防…

RustRover加载Rust项目报错

问题描述&#xff1a; 昨天还可以正常使用的RustRover今天打开Rust项目一直报错&#xff1a; warning: spurious network error (3 tries remaining): [7] Couldnt connect to server (Failed to connect to 127.0.0.1 port 51342 after 105750 ms: Couldnt connect to server…

C语言---文件操作万字详细分析(6)

文件操作 到这里&#xff0c; C语言所有知识点&#xff0c; 就告已段落了&#xff0c; 虽然知识点到这里结束了&#xff0c; 但我想&#xff0c; 我们的编程之路也可能刚刚开始&#xff0c; 这些知识&#xff0c; 是我们在创造伟大事物时&#xff0c; 必不可少的基础&#xff…

回溯——3、5升杯倒4升水

回溯应用 接前面书上说数学浅谈最大公约数g c d ( a , b ) = x ∗ a + y ∗ b gcd(a,b)=x*a+y*b gcd(a,b)=x∗a+y∗bP 3 2 = 6 P_{3}^{2}=6 P32​=6只要一杯8升水代码一般回溯方法的程序结构打印接前面 递归的改造——间隔挑硬币打印所挑选的硬币需要用到回溯。但书上的回溯没…

clickhouse 安装配置

1.clickhouse官网下载安装包&#xff1a; 官网下载地址&#xff1a; https://packages.clickhouse.com/tgz/ 下载四个tgz文件&#xff1a; 1 clickhouse-common-static 2 clickhouse-common-static-dbg 3 clickhouse-server 4 clickhouse-client 2 安装上面1到4的顺序依…

STM32学习记录---jlink使用

SEGGER J-Flash V6.82g下载程序&#xff1b; 硬件&#xff1a;ARM仿真器 swd口 过程&#xff1a; 1.打开软件&#xff0c;会提示是否打开上一次的.jflash文件&#xff1b; 2.新建工程 3.选择器件&#xff0c;找不到&#xff0c;可以找相近的或者相近的核心 4.选择完成&…

IPsec传输模式与隧道模式的深度解析及应用实例

随着网络安全威胁的日益严峻&#xff0c;IPsec作为网络层安全协议&#xff0c;其传输模式与隧道模式的选择对确保通信安全至关重要。本文旨在深入探讨这两种模式的差异&#xff0c;并通过实际案例展示其应用。 一、传输模式和隧道模式的详细描述 传输模式&#xff1a; 应用场景…

A014-基于Spring Boot的家电销售展示平台设计与实现

&#x1f64a;作者简介&#xff1a;在校研究生&#xff0c;拥有计算机专业的研究生开发团队&#xff0c;分享技术代码帮助学生学习&#xff0c;独立完成自己的网站项目。 代码可以查看文章末尾⬇️联系方式获取&#xff0c;记得注明来意哦~&#x1f339; 赠送计算机毕业设计600…

代码随想录第十六天| 513.找树左下角的值 、112. 路径总和 、113. 路径总和 II、106、从中序与后序遍历序列构造二叉树

513. 找树左下角的值 题目描述 给定一个二叉树&#xff0c;找到树的最后一行最左边的节点值。 解题思路 深度优先遍历 (DFS)&#xff1a;使用深度优先遍历来查找树的左下角值。记录最大深度&#xff1a;定义 maxDepth 变量&#xff0c;用于记录遍历时的最大深度。更新左下角…

triangle_area_calculators库发布

最近将在pip网站上发布triangle_area_calculators库&#xff08;我编写的python第三方库&#xff09; triangle_area_calculators库用于计算不同类型及不同已知量的三角形面积 在triangle_area_calculators库中&#xff0c;有一个名为TriangleAreaCalculators的类 可以通过f…

分布式数据库:核心概念、架构设计及应用实践

随着互联网和大数据技术的迅猛发展&#xff0c;传统单体数据库架构在处理大规模数据、支持高并发访问方面面临严峻挑战。分布式数据库应运而生&#xff0c;以其高可用性、扩展性和容错能力&#xff0c;逐渐成为现代化企业数据库架构的主流选择。本文将系统性地介绍分布式数据库…

2024年北京海淀区中小学生信息学竞赛校级预选赛试题

2024年北京海淀区中小学生信息学竞赛校级预选赛试题 题目总数&#xff1a;24 总分数&#xff1a;100 编程基础知识单选题 第 1 题 单选题 关于 2024年海淀区信息学竞赛的描述错误的是( ) A.报名在网上报名系统进行 B.必须经过学籍所在学校的指导教师审核 C.学校…

软件测试学习笔记丨Vue常用指令-输入绑定(v-model)

本文转自测试人社区&#xff0c;原文链接&#xff1a;https://ceshiren.com/t/topic/23461 指令 指令是将一些特殊行为应用到页面DOM元素的特殊属性 格式都是以v-开始的&#xff0c;例如&#xff1a; v-model&#xff1a;双向绑定v-if和v-else&#xff1a;元素是否存在v-sho…

PySpark 本地开发环境搭建与实践

目录 一、PySpark 本地开发环境搭建 &#xff08;一&#xff09;Windows 本地 JDK 和 Hadoop 的安装 &#xff08;二&#xff09;Windows 安装 Anaconda &#xff08;三&#xff09;Anaconda 中安装 PySpark &#xff08;四&#xff09;Pycharm 中创建工程 二、编写代码 …

解决 Spring 异步处理中的 JDK 动态代理问题及相关错误分析

解决 Spring 异步处理中的 JDK 动态代理问题及相关错误分析 遇到的问题&#xff1a; 在使用 Spring 的 Async 注解开启异步处理时&#xff0c;遇到以下错误&#xff1a; The bean ServiceImplChannel could not be injected as a com.wn.order.pay.recharge.controller.Serv…

UI自动化测试 —— CSS元素定位实践!

前言 自动化测试元素定位是指在自动化测试过程中&#xff0c;通过特定的方法或策略来准确识别和定位页面上的元素&#xff0c;以便对这些元素进行进一步的操作或断言。这些元素可以是文本框、按钮、链接、图片等HTML页面上的任何可见或不可见的组件。 在自动化测试中&#xf…

封装一个请求的hook(react函数组件)

对于后台系统&#xff0c;上面筛选&#xff0c;下面表格分页的页面&#xff0c;这个hook非常实用 omitBy方法&#xff1a;过滤不为undefined的对象属性 export const omitBy <T extends IObject, K extends keyof T>(object:T, predicate:(value:T[K]) > boolean):I…

AI大模型重塑软件开发:流程、优势、挑战与展望

&#x1f9d1; 博主简介&#xff1a;CSDN博客专家&#xff0c;历代文学网&#xff08;PC端可以访问&#xff1a;https://literature.sinhy.com/#/literature?__c1000&#xff0c;移动端可微信小程序搜索“历代文学”&#xff09;总架构师&#xff0c;15年工作经验&#xff0c;…