洛谷P1055 ISBN号码
题目描述
每一本正式出版的图书都有一个ISBN号码与之对应,ISBN码包括 999 位数字、 111 位识别码和 333 位分隔符,其规定格式如x-xxx-xxxxx-x
,其中符号-
就是分隔符(键盘上的减号),最后一位是识别码,例如0-670-82162-4
就是一个标准的ISBN码。ISBN码的首位数字表示书籍的出版语言,例如 000 代表英语;第一个分隔符-
之后的三位数字代表出版社,例如 670670670 代表维京出版社;第二个分隔符后的五位数字代表该书在该出版社的编号;最后一位为识别码。
识别码的计算方法如下:
首位数字乘以 111 加上次位数字乘以 222 ……以此类推,用所得的结果 mod11 \bmod 11mod11 ,所得的余数即为识别码,如果余数为 101010 ,则识别码为大写字母 XXX 。例如ISBN号码0-670-82162-4
中的识别码 444 是这样得到的:对067082162
这 999 个数字,从左至右,分别乘以 1,2,...,91,2,...,91,2,...,9 再求和,即 0×1+6×2+……+2×9=1580×1+6×2+……+2×9=1580×1+6×2+……+2×9=158 ,然后取 158mod11158 \bmod 11158mod11 的结果 444 作为识别码。
你的任务是编写程序判断输入的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
说明
2008普及组第一题
#include<iostream>
#include<algorithm>
#include<cstring>
using namespace std;
int main()
{
char a[14];
int i, mod;
cin>>a;
mod=((a[0]-'0')+(a[2]-'0')*2+(a[3]-'0')*3+(a[4]-'0')*4+(a[6]-'0')*5+(a[7]-'0')*6+(a[8]-'0')*7+(a[9]-'0')*8+(a[10]-'0')*9)%11;
if(mod==10)
mod='X';
if(mod==a[12]-'0'||mod==a[12])
cout<<"Right"<<endl;
else
{
for(i=0;i<12;i++)
cout<<a[i];
if(mod=='X')
cout<<"X"<<endl;
else
cout<<mod<<endl;
}
return 0;
}
最新文章
- Net中对Object的定义
- linux shell 指令 诸如-d, -f, -e之类的判断表达式
- 3DES 加解密,对长度不限制
- (转)使用CruiseControl+SVN+ANT实现持续集成之三
- @DataProvider ITestContext 参数
- CodeForces 670A Holidays
- 基于Flink的windows--简介
- ueditor编辑器插件 chrome中图片上传框延时问题
- 10 种保护 Spring Boot 应用的绝佳方法
- Theorems for existence and uniqueness of variational problem
- 新节点在线加入PXC
- happyxiaofan的程序员书单
- autocomplete 自动填充 combobox
- 浏览器 worker
- hibernate基础配置
- PCIe 调试
- knowledgeroot 配置
- vue手机端横屏竖屏切换
- 【BZOJ2213】[Poi2011]Difference DP
- 在16aspx.com上下了一个简单商品房销售系统源码,怎么修改它的默认登录名和密码
热门文章
- 使用Neo4j和简单分词算法实现菜品推荐系统
- 关于使用JetbrainsCrack破解idea
- [SCSS] Convert SCSS Variable Arguments to JavaScript
- 聚类k-means/k-means++/fcm学习笔记
- golang自己定义数据类型查询与插入postgresql中point数据
- hadoop权威指南(第四版)要点翻译(5)——Chapter 3. The HDFS(5)
- 推断一个点是否在某个区域内。百度,高德,腾讯都能用。(php版)
- wpf Listbox 设置ItemContainerStyle后,ItemTemplateSelector不能触发
- 国产芯片任重道远 国科微SSD主控芯片的“追赶之路”(不能只提供一颗芯片,而是要将芯片、国密算法、固件Firmware、BIOS和操作系统紧密联系在一起,变成完整解决方案交给行业用户,才能真正体现自身的价值)
- php basic syntax