news 2026/5/27 19:18:32

P1055 [NOIP 2008 普及组] ISBN 号码

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
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!!!
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/26 13:07:09

从零构建企业级RAG系统:5大核心技术提升AI回答准确率90%+ (含完整代码)

本文系统介绍RAG高级技术体系&#xff0c;涵盖Query改写、联网搜索、混合检索与Rerank重排序等核心技术&#xff0c;解决AI回答不准确、无法处理实时问题等痛点。通过知识库问题生成、对话知识沉淀、健康检查与版本管理等机制&#xff0c;实现知识库自我进化。以迪士尼客服为例…

作者头像 李华
网站建设 2026/5/25 16:45:08

Backtrader量化交易框架:从入门到精通的完整实战指南

Backtrader量化交易框架&#xff1a;从入门到精通的完整实战指南 【免费下载链接】backtrader 项目地址: https://gitcode.com/gh_mirrors/bac/backtrader Backtrader作为Python生态中最受欢迎的量化交易框架之一&#xff0c;以其强大的功能和灵活的架构赢得了全球交易…

作者头像 李华
网站建设 2026/5/26 22:05:08

3大核心技术揭秘:Puerts如何让UE5程序化生成效率提升500%

3大核心技术揭秘&#xff1a;Puerts如何让UE5程序化生成效率提升500% 【免费下载链接】puerts PUER(普洱) Typescript. Lets write your game in UE or Unity with TypeScript. 项目地址: https://gitcode.com/GitHub_Trending/pu/puerts 在游戏开发领域&#xff0c;程序…

作者头像 李华
网站建设 2026/5/26 13:30:32

当测试遇上智能

在数字化转型浪潮与全球数据安全法规日趋严格的背景下&#xff0c;数据安全已从IT的辅助角色跃升为企业的核心生命线。对于软件测试从业者而言&#xff0c;传统的、基于固定规则和已知模式的数据安全测试方法正面临巨大挑战&#xff1a;未知的攻击向量、海量的代码与数据交互、…

作者头像 李华
网站建设 2026/5/26 16:08:04

Ice终极指南:免费快速打造完美macOS菜单栏管理方案

Ice终极指南&#xff1a;免费快速打造完美macOS菜单栏管理方案 【免费下载链接】Ice Powerful menu bar manager for macOS 项目地址: https://gitcode.com/GitHub_Trending/ice/Ice 作为一名Mac用户&#xff0c;你是否曾经被杂乱的菜单栏图标困扰&#xff1f;每天打开电…

作者头像 李华
网站建设 2026/5/22 8:28:49

Tabby终极指南:从零开始掌握开源AI编程助手

Tabby终极指南&#xff1a;从零开始掌握开源AI编程助手 【免费下载链接】tabby tabby - 一个自托管的 AI 编程助手&#xff0c;提供给开发者一个开源的、本地运行的 GitHub Copilot 替代方案。 项目地址: https://gitcode.com/GitHub_Trending/tab/tabby 还在为寻找免费…

作者头像 李华