70弱弱大学牲求救

P1055 [NOIP2008 普及组] ISBN 号码

yinhaonan666 @ 2024-07-21 14:55:44

#include<bits/stdc++.h>
using namespace std;
int main() {
string str;
int a[9],k=0,su=0,m=1,n,y;
cin>>str;
for(int i=0;i<13;i++)
{
    if(str[i]!='-')
    {
        a[k]=str[i]-48;
        k++;
    }
}
for(int i=0;i<9;i++)
{
    su+=a[i]*m;
    m++;
}
n=su%11;
if(n==10)
{
    if(a[9]=='X')
    {
        cout<<"Right";
    }
    else 
    {
    for(int i=0;i<12;i++)
    {
        cout<<str[i];
    }
    cout<<'X';}
}
if(n!=10)
{
    if(a[9]==n)
    {
        cout<<"Right";
    }
    else
    {
    for(int i=0;i<12;i++)
    {
        cout<<str[i];
    }
    cout<<n;}
}
}

by qyzzyqlqj @ 2024-07-24 15:47:48

把数字和加起来,不用判断直接计算新的正确字符串,再与原来对比输出

#include<bits/stdc++.h>
using namespace std;
int main(){
    string a;
    cin>>a;
    int sum=0,index=0;
    for(int i=1;i<=9;i++,index++){
        if(a[index]=='-'){
            index++;
        }
        sum+=i*(a[index]-'0');
    }
    string b;
    b=a.substr(0,12);
    if(sum%11==10)b+='X';
    else b+=(char)(sum%11+'0'); 
    if(a==b){
        cout<<"Right";
        return 0;
    }
    cout<<b;
    return 0;
}

by yinhaonan666 @ 2024-07-24 17:53:56

@qyzzyqlqj ok谢谢哥关注了


by qyzzyqlqj @ 2024-07-24 18:29:11

@yinhaonan666 我还没你大,中学牲蒟蒻一枚,担不起


|