算法知识点: 字符串处理,模拟

复杂度:

解题思路:

按照题目中给定的规则,计算出识别码,再判断是否与给定的识别码相同:

  • 如果相同,输出 "Right";
  • 如果不同,输出 正确的字符串。

C++ 代码:

#include <iostream>
#include <algorithm>
 
using namespace std;
 
int main()
{
    string str;
    cin >> str;
    int sum = 0;
    for (int i = 0, j = 1; i + 1 < str.size(); i ++ )
        if (str[i] != '-')
        {
            sum += (str[i] - '0') * j;
            j ++ ;
        }
    sum %= 11;
    char c = 'X';
    if (sum < 10) c = '0' + sum;
    if (c == str.back()) puts("Right");
    else
    {
        str.back() = c;
        cout << str << endl;
    }
 
    return 0;
}


另外,牛客暑期NOIP真题班限时免费报名
报名链接:https://www.nowcoder.com/courses/cover/live/248
报名优惠券:DCYxdCJ