【NOIP2017普及组复赛】题2:图书管理员

NOIP2017普及组复赛解题报告 这次的题目相对来以往的前几道题比较简单,但最后一道题比较难,考场上只想出来了50分的代码。 阅读详情

题2:图书管理员

【题目描述】

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

【输入】

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

【输出】

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

【输入样例】

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

【输出样例】

23
1123
-1
-1
-1

【样例说明】

第一位读者需要的书有 2123、1123、232123、1123、232123、1123、23,其中 232323 是最小的图书编码。第二位读者需要的书有 2123、11232123、11232123、1123,其中 112311231123 是最小的图书编码。对于第三位,第四位和第五位读者,没有书的图书编码以他们的需求码结尾,即没有他们需要的书,输出 −1-1−1。

【数据规模与约定】

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

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

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

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

对于 100%100\%100% 的数据,1≤n≤1,000,1≤q≤1,0001 ≤ n ≤ 1,000,1 ≤ q ≤ 1,0001≤n≤1,000,1≤q≤1,000,所有的图书编码和需求码均不超过 10,000,00010,000,00010,000,000。

【代码如下】:

#include <bits/stdc++.h>
using namespace std;
const int S = 1005;
long long b[S], x[S], tmp[S], xc[S]; 
int n, q;
int main() {
	cin >> n >> q;
	for (int i = 1; i <= S; i++)
		tmp[i] = 1;
	for (int i = 1; i <= n; i++)
		cin >> b[i];
	sort(b, b + n + 1); 
	for (int i = 1; i <= q; i++) {
		cin >> xc[i] >> x[i];
		for (int j = 1; j <= xc[i]; j++)
			tmp[i] *= 10; 
	}
	for (int i = 1; i <= q; i++) {
		for (int j = 1; j <= n; j++)
			if (b[j] % tmp[i] == x[i]) { 
				cout << b[j] << '\n';
				break;
			} else if (j == n) {
				cout << -1 << '\n';
				break;
			}
	}
	return 0;
}
历年CSP-J(NOIP普及组)考点分析与分类汇总(纯干货) noip/csp-j历年真题考点分类 阅读详情

相关推荐

NOIP2017普及组题解

NOIP2017普及组题解 by Tokgo

Tokgo 2787

[NOIP2017 普及组] 图书管理员

通过mod简化运算

GQCgg的博客 1113

信奥赛CSP-J复赛集训(模拟算法专题)(25):[NOIP 2017 普及组] 图书管理员

信奥赛CSP-J复赛集训(模拟算法专题)(25):[NOIP 2017 普及组] 图书管理员

王老师青少年编程 1257

P3955 [NOIP2017 普及组] 图书管理员

清清楚楚家人们

m0_74969835的博客 415

CSP-J (NOIP普及组) 历年复赛真题及考察内容(1998~2021)

简单数学、枚举、进制转换。动态规划(高级)、栈。

星卯教育-信奥教练tony 4851

【数学建模】 进化计算与群体智能

遗传算法(GA)是一种用于优化和搜索问题的启发式算法。它模拟了自然选择的过程,其中个体通过遗传和变异进行繁殖,逐渐进化出更优的解。基本步骤初始化:生成初始种群。适应度评估:评估种群中每个个体的适应度。选择:根据适应度选择个体进行繁殖。交叉:选定个体对进行基因交换,生成新的后代。变异:对一些个体进行基因变异,以增加多样性。迭代:重复评估和繁殖过程,直至达到停止条件。粒子群优化算法(PSO)是一种基于群体智能的优化算法,由Kennedy和Eberhart于1995年提出。其灵感来源于鸟群觅食的行为。

weixin_42914989的博客 1113

洛谷P3955 [NOIP2017 普及组] 图书管理员

题目链接 纯粹的暴力枚举,复杂度O(n2) 因为题目数据很小,所以很安全,不会超时. #include<bits/stdc++.h> using namespace std; #define N 1005 #define LL long long int book[N];//放书 int flag;//放需求码长度 int user;//放需求码 int n,m;//放书的数量和读者的数量 int main() { int i,j;//老工具人 cin>>n>&g

Nico_Anzio的博客 843

5分钟快速搭建:使用ros1_bridge实现ROS2容器与ROS1主机的无缝通信

本文详细介绍了如何在5分钟内快速搭建基于ros1_bridge的通信方案,实现运行在Docker容器中的ROS2节点与宿主机ROS1系统的无缝数据交换。通过环境隔离、Docker容器化部署及选择性桥接配置,该方案能有效整合新旧系统,避免大规模代码重构,是机器人项目渐进式升级的实用策略。

weixin_29268637的博客 178

P3955 图书管理员

题目直通车: P3955 图书管理员 大概看了一下,很多dalao都用数组写的这道题(诶,我好像也用数组了),而我就不一样了,我是用倒着的字符串写的er (手动滑稽) 思路 1.先将所有图书编码用string类型存储起来,那如何存储呢? 我定义了一个结构体,里面有两个变量,一个为图书编码,另一个为本图书编码的长度,那么长度有什么用呢?看到下一步你就知道了 struct Cc{ string s;...

OOMGD的博客 621

快乐8 Ai大模型XGBoost LightGBM预测系统

随机森林回归:通过集成多个决策树模型,提高预测的准确性和稳定性。XGBoost:一种基于梯度提升的强大模型,擅长处理结构化数据。LightGBM:一种高效的基于决策树算法的分布式梯度提升框架,具有快速的训练速度和低内存消耗。高预测准确率:通过集成多种模型,提供更为精准的预测结果。多种预测方法:支持同尾号、重号、温号、连号和综合预测等多种预测策略,满足不同用户的需求。实时日志:在预测过程中,用户可以实时查看系统的预测进度和结果。

m0_72636583的博客 1万+

机器学习系列(1)_逻辑回归初步

1、总述 逻辑回归是应用非常广泛的一个分类机器学习算法,它将数据拟合到一个logit函数(或者叫做logistic函数)中,从而能够完成对事件发生的概率进行预测。 2、由来     要说逻辑回归,我们得追溯到线性回归,想必大家对线性回归都有一定的了解,即对于多维空间中存在的样本点,我们用特征的线性组合去拟合空间中点的分布和轨迹。如下图所示:     线性回归能对连续值结果进行预测,

寒小阳 13万+

21.01.22 NO.27

问题 B: 图书管理员 题目描述 图书馆中每本书都有一个图书编码,可以用于快速检索图书,这个图书编码是一个正整数。 每位借书的读者手中有一个需求码,这个需求码也是一个正整数。如果一本书的图书编码恰好以读者的需求码结尾,那么这本书就是这位读者所需要的。 小 D 刚刚当上图书馆的管理员,她知道图书馆里所有书的图书编码,她请你帮她写一个程序,对于每一位读者,求出他所需要的书中图书编码最小的那本书,如果没有他需要的书,请输出-1。 输入 第一行,包含两个正整数 n 和 q,以一个空格分开,分别代表图书馆里书的数量和

Ustinian_1206的博客 659

自定义载板RK3588HDMI输入配置完整解决方案

✅ HDMI输入信号检测✅ 自动时序识别(支持1080p@60Hz等标准格式)✅ V4L2视频设备接口✅ 实时视频流捕获✅ H.264编码录制✅ HDCP内容保护支持问题根因识别:发现了hdmim1模块资源冲突的本质问题硬件设计理解:明确了Orange Pi 5 Plus的真实硬件设计意图功能实现:成功启用HDMI输入功能,替代了无法使用的HDMI1输出完整验证:建立了从硬件检测到视频录制的完整测试流程。

梁俊星的博客 1271

2017年NOIP普及组复赛真题解析

具体而言,当g< d时,他的机器人每次可以选择向右弹跳的距离为 d-g, d-g+1, d-g+2,...,d+g-2,d+g-1,d+g;花费2个金币改进后,小R的机器人依次选择的向右弹跳的距离分别为2,3,5,3,4,3,先后到达的位置分别为 2,5,10,13,17,20,对应1, 2, 3, 5, 6, 7这6个格子。从(2,3)走到(3,3)不花费金币 从(3,3)只能施展魔法到达(3,2),(2,3),(3,4),(4,3) 而从以上四点均无法到达(5,5),故无法到达终点,输出-1。

weixin_42358969的博客 1280

《Python等级认证CCF-GESP真题解析》专栏总目录

❤️ 专栏名称:《🌸 专栏介绍:中国计算机学会GESP《CCF编程能力等级谁》Python编程(1~8级)历届真题解析。🚀 订阅专栏:订阅后可阅读专栏内所有真题解析,真题持续更新中,限时9.9元,欢迎订阅!

人生就是一个不断学习的过程 1878

热力学仿真软件:COMSOL Heat Transfer_(18).案例研究:工业加热炉优化

工业加热炉的优化设计和操作参数调整是提高制造过程效率和产品质量的关键。通过仿真软件如COMSOL Multiphysics,可以精确地分析炉内的温度分布、能耗和热损失,从而提出有效的优化方案。本文通过一个实际应用案例,展示了如何利用仿真技术进行工业加热炉的综合优化,并通过实验验证了优化方案的有效性。希望这些方法和案例可以为其他制造企业提供参考,帮助他们在实际生产中提高加热炉的性能和效率。

kkchenjj的博客 1008

【2017NOIP普及组】T2 图书管理员

P3955 图书管理员 题目传送门 方法一: #include<cstdio> #include<iostream> #include<cmath> #include<cstring> #include<string> #include<algorithm> #include<vector> #define fre...

蒟蒻こんにゃく 617

Dify 第 2 篇 Dify 插件离线安装

Dify是一个支持插件扩展的AI平台,其插件市场提供5种类型插件(模型、工具、Agent策略、扩展、插件包)。由于默认pip安装速度慢,可通过dify-plugin-repackaging工具将插件转换为离线包(使用阿里云镜像加速)。该工具提供两种方式:1)自备Python环境执行脚本;2)使用Docker环境(推荐)。脚本支持从Dify市场或GitHub下载插件,并重新打包为含依赖的离线包,便于通过"本地插件"方式快速安装。

甘蓝的专栏 1258

信息学奥林匹克竞赛 普及组 NOIP 2017 T2 图书管理员

NOIP2017 普及组 T2。

长春高老师编程 806

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

CSP-J (NOIP普及组) 历年复赛真题考察内容(1998~2021)

TZOJ题目分类 本博客原文地址:https://www.cnblogs.com/BobHuang/p/14522022.html 其中,1.较简单题25题左右;2.动态规划17题,其中9题较好做;3.模拟(阅读题目将问题抽象建模写出程序)为11题;4.搜索8题,大部分不会做的题目均可以用搜索获得步骤分;5.贪心8题,部分不好想;6.高精度5题。 1.CSP-J 2020 T1 优秀的拆分 位运算、进制转换 T2 直播获奖 桶排序 T3 表达式 栈、深搜 T4 方格取数 动态规划(高级) 2.CSP-J 2

BobHuang的博客 1万+

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

NOIP2017普及组复赛T2

NOIP2017普及组T2 图书管理员 题目描述 输入 输出 样例输入 样例输出 分析 代码[NOIP2017普及组]T2 图书管理员题目描述图书馆中每本书都有一个图书编码,可以用于快速检索图书,这个图书编码是一个 正整数。 每位借书的读者手中有一个需求码,这个需求码也是一个正整数。如果一本书的图 书编码恰好以读者的需求码结尾,那么这本书就是这位读者所需要的。 小 D 刚刚当上图书馆的管理员

C20190733_ZT的博客 1504

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

NOIP 普及组 复赛 试题 目录 信奥 历年

姐妹篇详见https://blog.youkuaiyun.com/mrcrack/article/details/86620012 NOIP  普及组  复赛  试题  目录   信奥  历年 NOIP  2018 普及组  复赛  试题  目录 1.标题统计  title 2.龙虎斗  fight 3.摆渡车  bus 4.对称二叉树  tree NOIP  2017 普及组  复赛  试题 ...

mrcrack的博客 3311

【NOIP普及组 复赛/CSP-J 第二轮真题】题解目录

1963 【13NOIP普及组】小朋友的数字:[点击这里]1940 【07NOIP普及组】守望者的逃离:[点击这里]1964 【13NOIP普及组】车站分级:[点击这里]1960 【12NOIP普及组】文化之旅:[点击这里]1951 【10NOIP普及组】导弹拦截:[点击这里]1952 【10NOIP普及组】三国游戏:[点击这里]1948 【09NOIP普及组】道路游戏:[点击这里]

君义NOIP的博客 3275

NOIP1998-2018年普及组 CSP-J2 2019 2020 解题报告及视频

NOIP1998-2018年普及组 CSP-J2 2019 2020 解题报告及视频

青少年趣味编程 1261

NOIP2017普及组复赛 解题分析

1.成绩 算法分析 据说这题当年官方评测时也闹出过乌龙。小数会产生异变,比如以下代码: inta=80∗0.2int \quad a = 80 * 0.2inta=80∗0.2 赋值号右侧是实数,最后结果可能会为16.000001或15.999999,赋值给aaa的话,aaa的值可能是16或15,产生错误。解决方法:化乘为除(A,B,C 都是 10的整数倍),或定义为doubledoubledouble,最后结果保留0位输出。 #include <iostream> #include <c

zhendong 1883
上一篇: 【NOIP2017普及组复赛】题1:成绩
下一篇: 【NOIP2017普及组复赛】题3:棋盘
lpstudio
博客等级 码龄16年 1266粉丝 78原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lpstudio

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值