10分 ! 帮助必关 !

P1055 [NOIP2008 普及组] ISBN 号码

jingzongrui @ 2025-01-12 20:11:51

#include<bits/stdc++.h>
#include<cstring>       
using namespace std;
int ans = 0 , t = 1 ;
char a , b ;
string s ;
int main(){
    cin >> s ;
    for ( int i = 0 ; i < s.size() ; i++ )
    {
        if ( s[i] !=  '-' ){
            ans += ( s[i] - '0' ) * t ;
            t++ ;
        }
    }
    ans %= 11 ;
    if ( ans == 10 ){
        a = 'x' ;
        b = s[s.size()] ;
        if ( a == b ){
            cout << "Right" ;
            return 0 ;
        }
        else
        {
            s[s.size()] = a ;
            for ( int i = 0 ; i < s.size() - 1 ; i++ )
            {
                cout << s[i] ;
            }
            cout << a ;
        }
    }    
    else
    {
        if ( ans == s[s.size()] ){
            cout << "Right" ;
            return 0 ;
        }
        else
        {
            s[s.size()] = ans ;
            for ( int i = 0 ; i < s.size() - 1 ; i++ )
            {
                cout << s[i] ;
            }
            cout << ans ;
        }
    }

    return 0;
}

|