当前位置: 首页 > news >正文

P1055 [NOIP 2008 普及组] ISBN 号码

前言

玩这么久洛谷,终于会直接复制题目的Markdown了🤣

P1055 [NOIP 2008 普及组] ISBN 号码

题目描述

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

识别码的计算方法如下:

首位数字乘以1 11加上次位数字乘以2 22……以此类推,用所得的结果 $ \bmod 11$,所得的余数即为识别码,如果余数为10 1010,则识别码为大写字母X XX。例如 ISBN 号码0-670-82162-4中的识别码4 44是这样得到的:对0670821629 99个数字,从左至右,分别乘以1 , 2 , … , 9 1,2,\dots,91,2,,9再求和,即0 × 1 + 6 × 2 + … … + 2 × 9 = 158 0\times 1+6\times 2+……+2\times 9=1580×1+6×2+……+2×9=158,然后取158 m o d 11 158 \bmod 11158mod11的结果4 44作为识别码。

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

输入格式

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

输出格式

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

输入输出样例 #1

输入 #1

0-670-82162-4

输出 #1

Right

输入输出样例 #2

输入 #2

0-670-82162-0

输出 #2

0-670-82162-4

说明/提示

2008 普及组第一题
题目传送门

思路

你掉入海题里了
这道题其实就是这样的
有13位字符,其中把前十一位相乘再相加(-号不算)

首位数字乘以1 11加上次位数字乘以2 22……以此类推
题目是这样讲的,int不会爆
所以主要代码是:

for(inti=0;i<11;i++){if(a[i]!='-'){tempp=a[i]-'0';sum+=tempp*temp;temp++;}}

对吧…
然后他的最后一位是sum%11的结果
特殊:当sum%11=10的话,最后一位就输出X
所以最后再做个判定
如果题目的字符串是正确的,就输出Right
否则就输出正确的字符串
正确的字符串就把前12位输出,剩下在把正确的最后一位输出就完事了

AC代码

#include<bits/stdc++.h>usingnamespacestd;chara[100];longlongsum,temp=1,tempp;intmain(){for(inti=0;i<13;i++){cin>>a[i];}for(inti=0;i<11;i++){if(a[i]!='-'){tempp=a[i]-'0';sum+=tempp*temp;temp++;}}tempp=a[12]-'0';if(sum%11==tempp||(sum%11==10&&a[12]=='X')){cout<<"Right";}else{for(inti=0;i<12;i++){cout<<a[i];}if(sum%11!=10){cout<<sum%11;}else{cout<<"X";}}return0;}

完结撒花o(〃^▽^〃)o!!!
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

http://www.cnnetsun.cn/news/23110.html

相关文章:

  • 基于SSM框架的大学生选课系统的设计与实现毕业设计项目源码
  • 告别公式恐惧:AI如何让数学可视化像看电影一样简单
  • 第32篇:不是信号就下单?99% 的量化亏在这里!教你用一招拒绝亏损买入,Freqtrade自动量化
  • Smithbox游戏修改全攻略:从新手到专家的8个关键步骤
  • Ribo-seq
  • Archivematica:从零开始掌握开源数字档案管理系统
  • 如何快速掌握NukeSurvivalToolkit:视觉特效制作终极实战指南
  • 【YOLO11-MM 多模态目标检测】跨模态注意力 (CMA)高效特征融合、抛弃传统Concat特征融合,涨点起飞、解决复杂场景
  • Python脚本语言的四大优势:为何它高效又友好?
  • 软件许可优化技术选型:动态资源池化vs传统固定授权ROI对比
  • Calendar.js完整指南:打造专业级JavaScript日历应用
  • PennyLane量子机器学习实战解密:从问题到解决方案的突破路径
  • 华为OD机试真题-简单的自动曝光
  • 低代码平台测试秘籍:OutSystems组件校验法则
  • 揭秘!手机散热方案设计,多种散热措施仿真对比分析
  • 磁吸充电宝主动散热方案设计
  • 安宝特 FME:零代码实时数据管理标杆,Safe Software 中国授权合作首选
  • GPT-5.2全面解析:从代码到长文档分析,AI助手新标杆
  • 34、深入解析NFS服务器性能优化策略
  • 大模型学习全攻略:从理论基础到企业应用,一份资料搞定AI大模型学习
  • 36、优化NFS和NIS网络性能:从拓扑到客户端调优
  • 金山办公基于 DeepFlow docker 模式的可观测性实践
  • 植物三维基因组综合数据库——3D-GDP
  • 积分兑换柜专业企业
  • 4DGS技术深度解读:下一代自动驾驶仿真的“游戏规则改变者”
  • SRC漏洞挖掘经验+技巧篇,(非常详细)零基础入门到精通,收藏这一篇就够了_src 漏洞挖掘技巧
  • RINEX文件进行卫星导航解算
  • 【webrtc】继续编译aar 2025-12-12
  • 谷歌新架构突破Transformer超长上下文瓶颈!
  • 视觉回归测试:以Applitools为例的自动化实践与效能提升