感觉自己没问题,大佬们帮我看看,谢谢

P1055 [NOIP2008 普及组] ISBN 号码

wkl20110514 @ 2022-12-09 12:27:25

6-670-82162-X

这个输入有问题,我算出来我是对了的,这个码是没问题的,但他的输出是

6-670-82162-9

大家帮帮忙,这是我的代码:

#include <cstdio>
#include <algorithm>
#include <iostream>
#include <cmath>
#include <string>
using namespace std;
string a;
int main(){
    cin>>a;
    int n=(((a[0]-'0')*1+(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(n==a[12]-'0'||((n==10)&&(a[12]=='X'))){
        printf("Right");
        return 0;
    }
    a[12]=n+'0';
    cout<<a;
    return 0;
}
//6-670-82162-X
//6+12+21+0+40+12+7+48+18=164
//164%11=10

by wkl20110514 @ 2022-12-09 12:30:35

没有问题了


|