CSP历年复赛题-P1055 [NOIP2008 普及组] ISBN 号码

原题链接:https://www.luogu.com.cn/problem/P1055

题意解读:验证ISBN最后一位是否正确。

解题思路:直接模拟,不多说,上代码。

100分代码:

#include <bits/stdc++.h>
using namespace std;

int main()
{
    string s;
    cin >> s;
    int code = 0;
    int cnt = 0;
    for(int i = 0; i < s.size() - 1; i++)
    {
        if(s[i] >= '0' && s[i] <= '9')
        {
            code += (s[i] - '0') * (++cnt);
        }
    }
    code %= 11;
    
    char res = code + '0';
    if(code == 10) res = 'X';

    if(s[s.size() - 1] == res) cout << "Right";
    else 
    {
        s[s.size() - 1] = res;
        cout << s;
    }
}

 

posted @ 2024-05-27 13:01  五月江城  阅读(29)  评论(0编辑  收藏  举报