NOIP2008年普及组T1 ISBN号

【NOIP2008普及组复赛】 题1:ISBN号码 (isbn.pas/c/cpp)(isbn.pas/c/cpp)(isbn.pas/c/cpp)每一本正式出版的图书都有一个ISBNISBNISBN号码与之对应,ISBNISBNISBN码包括999位数字、111位识别码和333位分隔符,其规定格式如“x−xxx−xxxxx−x”“x-xxx-xxxxx-x”“x−xxx−xxxxx−x”,其中符号“−”“-”“−”是分隔符(键盘上的减号),最后一位是识别码,例如0−670−82162−40-670-82162-40−670−82162−4就是一个标准的IS 阅读详情

原文链接:这里

【题目描述】

每一本正式出版的图书都有一个ISBN号码与之对应,ISBN码包括9位数字、1位识别码和3位分隔符,其规定格式如“x-xxx-xxxxx-x”,其中符号“-”是分隔符(键盘上的减号),最后一位是识别码,例如0-670-82162-4就是一个标准的ISBN码。ISBN码的首位数字表示书籍的出版语音,例如0代表英语;第一个分隔符“-”之后的三位数字代表出版社,例如670代表维京出版社;第二个分隔符之后的五位数字代表该书在该出版社的编号;最后一位为识别码。

识别码的计算方法如下:

首位数字乘以1加上次位数字乘以2……以此类推,用所得的结果mod 11,所得的余数即为识别码,如果余数为10,则识别码为大写字母X。例如ISBN码0-670-82162-4中的识别码4是这样得到的:对0670082162这9个数字,从左至右,分别乘以1,2,…9,再求和,即0×1+6×2+……+2×9=158,然后取158 mod 11的结果4作为识别码/

你的任务是编写程序判断输入的ISBN号码中识别码是否正确,如果正确,则仅输出“Right”;如果错误,则输出你认为是正确的ISBN号码.

【输入描述】

只有一行,是一个字符序列,表示一本书的ISBN号码(保证输入符合ISBN号码.的格式要求)。

【输出描述】

一行,假如输入的ISBN号码的识别码正确,那么输出“Right”,否则,按照规定的格式,输出正确的ISBN号码(包括分隔符“-”)。

【样例输入1】

0-670-82162-4
【样例输出1】

Right
【样例输入2】

0-670-82162-0

【样例输出2】

0-670-82162-4

【参考代码1】

#include
#include
using namespace std;
char a[13];
int b[9];
long long c=0;
int main()
{
scanf("%s",&a);
b[0]=a[0]-‘0’;
b[1]=a[2]-‘0’;
b[2]=a[3]-‘0’;
b[3]=a[4]-‘0’;
b[4]=a[6]-‘0’;
b[5]=a[7]-‘0’;
b[6]=a[8]-‘0’;
b[7]=a[9]-‘0’;
b[8]=a[10]-‘0’;

for(int i=0;i<9;i++)
{
	b[i]*=i+1;
	c+=b[i];
}
c%=11; //没有考虑余数 是10 的情况 X

// cout<<c<<endl;
// cout<<a[12]<<endl;
// cout<<a[12]-‘0’<<endl;
//
//这里需要考虑到最后一位是X的情况

if(a[12]-'0'== c || (a[12]=='X'&& c==10))
	printf("Right");
else if (a[12] !='X'&& c==10)
{	
	//考虑c为10,但是a[12]不是x 

// printf("%s\n",a);
// cout<<c<<" “<<a[12]<<endl;
a[12]=‘X’;
printf(”%s",a);
}
else
{
a[12]=c+‘0’;
printf("%s",a);
}
return 0;
}

NOIP普及组|2008T1ISBN号码 2008年NOIP普及组第一题:ISBN号码 每一本正式出版的图书都有一个 ISBN 号码与之对应,ISBN 码包括 $9$ 位数字、$1$ 位识别码和 $3$ 位分隔符,其规定格式如 `x-xxx-xxxxx-x`,其中符号 `-` 就是分隔符(键盘上的减号),最后一位是识别码,例如 `0-670-82162-4`就是一个标准的 ISBN 码。ISBN 码的首位数字表示书籍的出版语言,例如 $0$ 代表英语;第一个分隔符 `-` 之后的三位数字代表出版社,例如 $670$ 代表维京出版社;第二个分隔符后的 阅读详情

相关推荐

CSP/信奥赛C++语法基础刷题训练(33):[NOIP2008 普及组] ISBN 号码

CSP/信奥赛C++语法基础刷题训练(33):[NOIP2008 普及组] ISBN 号码

王老师青少年编程 1375

CCF ISBN号码 字符串处理

13年12月CCF计算机软件能力认证 3193. ISBN号码 每一本正式出版的图书都有一个 ISBN 号码与之对应。 ISBN 码包括 9 位数字、1 位识别码和 3 位分隔符,其规定格式如 x-xxx-xxxxx-x,其中符号 - 是分隔符(键盘上的减号),最后一位是识别码,例如 0-670-82162-4 就是一个标准的ISBN码。 ISBN 码的首位数字表示书籍的出版语言,例如 0 代表英语;第一个分隔符 - 之后的三位数字代表出版社,例如 670 代表维京出版社;第二个分隔之后的五位数字代表该书在

Gestwr博客 370

【2008NOIP普及组】T1. ISBN号码 试题解析

【2008NOIP普及组】T1. ISBN号码试题解析

lybc2019的博客 464

CCF CSP 201312-2 ISBN号码

试题编号: 201312-2 试题名称: ISBN号码 时间限制: 1.0s 内存限制: 256.0MB 问题描述:   每一本正式出版的图书都有一个ISBN号码与之对应,ISBN码包括9位数字、1位识别码和3位分隔符,其规定格式如“x-xxx-xxxxx-x”,其中符号“-”是分隔符(键盘上的减号),最后一位是识别码,例如0-670-82162-4就是一个标...

Yuhan的博客 629

NOIP2008复赛普及组试题及测试数据

NOIP2008复赛普及组试题及测试数据

从圆形到椭圆:CenterNet中高斯热图半径的自适应优化策略

本文深入探讨了CenterNet目标检测模型中高斯热图生成策略的优化,针对传统圆形高斯核在处理长宽比差异大目标时的局限性,提出了自适应椭圆高斯核的解决方案。通过数学推导和代码实战,详细阐述了如何根据目标边界框尺寸动态计算椭圆长短轴半径,生成更贴合目标几何形状的热图监督信号,从而有效提升模型,尤其是对无人机、车辆等不规则目标的定位精度。

alice7model的博客 985

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

不过,班主任小雪发现了一些有趣的现象,当同学们的座次确定下来之后,只有有限的D对同学上课时会交头接耳。游戏规则是这样的:n个同学站成一个圆圈,其中的一个同学手里拿着一个球,当老师吹哨子时开始传球,每个同学可以把球传给自己左右的两个同学中的一个(左右任意),当老师在此吹哨子时,传球停止,此时,拿着球没有传出去的那个同学就是败者,要给大家表演一个节目。输入文件seat.in的第一行,有5个用空格隔开的整数,分别是M,N,K,L,D(2

weixin_42358969的博客 1028

C#实战:如何用HslCommunication快速搞定三菱FX5U PLC通讯(附完整代码)

本文详细介绍了如何利用HslCommunication库在C#环境中快速实现与三菱FX5U PLC的通讯。通过实战代码演示,从环境搭建、建立连接、核心数据读写到构建健壮的监控服务,系统讲解了如何高效完成数据采集与交互,大幅提升工业自动化项目的开发效率。

s4t5u6v的博客 1199

IMA+DeepSeekR1+本地知识库撰写NOIP2008普及组T1【ISBN 号码】题解

【摘要】由DeepSeek提供。本题要求验证ISBN识别码,重点在计算前9位加权和并进行11取模。处理时需跳过分隔符遍历数字,计算得出校验字符后与末位比对。若正确输出"Right",错误则替换并输出完整ISBN。DeepSeek的参考实现包含输入处理、循环计算及条件判断,确保代码正确映射校验位,时间复杂度O(1)。核心逻辑为sum%11校验值转换,实现简明高效的字符串处理。

ZLOJ 468

Windows 下安装 ros2 的超详细教程

Windows11 ROS安装

2401_83363439的博客 3318

2篇5章1节:实验流行病学的核心特征和设计原则

本文系统阐释实验流行病学的核心定义、四大核心特征、四大基本原则及主流设计类型,结合骨科、肿瘤科、儿科、精神科、内外妇儿及公共卫生等多学科临床实践案例,具象化解读人为干预、随机分组、平行对照、前瞻性设计的核心内涵与应用价值。同时,规范梳理对照、随机、盲法、重复四大研究基本原则,详细介绍临床试验、现场试验、社区试验三类主流研究设计的适配场景与应用差异。

MD Code 167

NOIP2008 普及组T1 ISBN号码 解题报告-S.B.S.

题目描述 每一本正式出版的图书都有一个ISBN号码与之对应,ISBN码包括9位数字、1位识别码和3位分隔符,其规定格式如“x-xxx-xxxxx-x”,其中符号“-”就是分隔符(键盘上的减号),最后一位是识别码,例如0-670-82162-4就是一个标准的ISBN码。ISBN码的首位数字表示书籍的出版语言,例如0代表英语;第一个分隔符“-”之后的三位数字代表出版社,例如670代表维京出版社;第二

SBS的博客 1234

基于图神经网络强化学习解决车辆路径规划问题(完整代码+报告)

基于图神经网络强化学习解决车辆路径规划问题(完整代码+报告)

3055

NOIP2008普及组题解

NOIP2008普及组题解 从我在其他站的博客直接搬过来的 posted @ 2016-04-16 01:11 T1 ISBN号码 题目描述 每一本正式出版的图书都有一个ISBN号码与之对应,ISBN码包括9位数字、1位识别码和3位分隔符, 其规定格式如“x-xxx-xxxxx-x”,其中符号“-”就是分隔符(键盘上的减号),最后一位是识别码,例如0-670-82162-4就

SilverNebula的博客 1034

华为自研 ERP、Oracle EBS 与 SAP 上线时系统配置思路设计差异深度分析

本文对比分析了华为自研ERP、Oracle EBS和SAP S/4HANA三大ERP系统在上线配置思路上的核心差异。从架构设计看,华为采用分布式微服务架构,SAP采用分层服务架构,Oracle采用集中式一体化架构;在模块配置上,华为以业务场景为导向,SAP基于行业模板,Oracle强调模块独立性;数据迁移方面,华为侧重业务规则清洗,SAP注重数据质量监控,Oracle依赖标准化工具;流程适配上,华为系统随流程调整,SAP在框架内优化,Oracle需定制开发;定制开发模式差异明显,华为采用插件化扩展,SAP使

金牌架构师 1451

【Matlab】从零开始掌握 MATLAB 安装激活:从环境搭建到问题解决全指南

打开 MATLAB,点击 “主页 - 设置路径”;点击 “添加文件夹”,选择自定义的工作文件夹,点击 “保存”,重启 MATLAB 生效。MATLAB R2024a 的安装与激活是开启 MATLAB 学习的第一步,也是构建稳定学习环境的基础。本文从安装前准备、分步操作、验证测试、问题解决到环境优化,完整覆盖了新手所需的所有知识点 —— 核心要点在于:确认系统兼容、使用合法授权、选择纯英文安装路径、完成功能验证。

unber的博客 596

洛谷 P1055 [NOIP2008 普及组 T1]:ISBN 号码

●​​​​​​​ 若 x 为数字 0~9 中的一个,'x' 为字符 '0'~'9' 中的一个,则 x 与 'x' 之间具有相互转换的关系。即,x+'0' 得到字符 '0'~'9' 中的一个,'x'-'0' 得到数字0~9 中的一个。 ●​​​​​​​ 若给定字符串 str,则在下面代码中,for 循环的循序变量 i 的上界为 str.size()-1。这是因为字符串 str 的第 str.size()-1 位的值需要进行计算求得。

hnjzsyjyj的专栏 854

01-系统技术架构师必备——软件架构设计基础与核心概念

摘要 本文系统阐述了软件架构设计的核心概念与方法论,重点涵盖以下内容:1)软件架构的四大要素(构件、连接件、约束、配置)及其边界划分;2)Garlan & Shaw五大架构风格(数据流、调用/返回、独立构件、虚拟机、仓库)的典型应用场景;3)基于电商库存系统的架构选型实战案例,展示如何根据业务需求(高并发、最终一致性)选择事件驱动架构配合Saga模式;4)介绍ABSD、DSSA等主流架构方法论及ISO/IEEE标准体系。文章融合金融与互联网领域的架构实践经验,为技术架构师提供系统性的知识框架和决策参考。

模界 | AI工程化实践者 181

IMA+DeepSeekR1+本地知识库撰写NOIP2008普及组T3【传球游戏】题解

【摘要】(DeepSeek-R1生成):n人围成环传球m次后返回起点的方案数。解法采用动态规划,状态dp[i][j]表示传i次后到j的方案数。转移方程:dp[i][j] = dp[i-1][左] + dp[i-1][右](边界取模处理)。初始dp[0][0]=1,最终答案dp[m][0]。代码从ball.in读n、m,计算后写入ball.out,时间复杂度O(mn),通过环状取模简化计算。

ZLOJ 657

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

NOIP2008普及组 题解 -SilverN

T1 ISBN号码 题目描述 每一本正式出版的图书都有一个ISBN号码与之对应,ISBN码包括9位数字、1位识别码和3位分隔符, 其规定格式如“x-xxx-xxxxx-x”,其中符号“-”就是分隔符(键盘上的减号),最后一位是识别码,例如0-670-82162-4就是一个标 准的ISBN码。ISBN码的首位数字表示书籍的出版语言,例如0代表英语;第一个分隔符“-”之后的三位数字代...

a394121312的博客 332

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

【IMA+DeepSeekR1+本地文件】撰写NOIP2008普及组T4【立体图】题解

摘要:本题需将m×n矩阵转换为立体图,每个数字表示积木层数。解题核心是通过模拟积木堆叠顺序(从后到前、从下到上),动态计算每个积木的绘制坐标,使用字符模板填充画布,并维护最小画布尺寸。代码通过三重循环遍历矩阵,调用drawBlock函数绘制积木,利用文件操作读写输入输出,最终按行输出画布,未覆盖部分以'.'填充。算法时间复杂度为O(mn×h),空间动态适配,严格符合C++98规范。

ZLOJ 575

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

IMA+DeepSeekR1+本地知识库撰写NOIP2008普及组T2【排座椅】题解

【摘要】(DeepSeek-R1生成):本题需在教室行列中设置通道,最大化分隔吵闹同学对。采用贪心策略:统计每行/列可分隔的对数,优先选最高者。横向选K条,纵向选L条,最终按编号升序输出。代码通过结构体记录行/列编号及对数,排序后筛选并排序结果,时间复杂度O(M log M + N log N)。

ZLOJ 440

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

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

青少年趣味编程 1261
上一篇: NOIP2009年普及组 T2 分数线划定
下一篇: NOIP2008年普及组 T2 排座椅
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值