AcWing 433. ISBN号码
原题链接
简单
作者:
王小强
,
2021-02-05 11:55:40
,
所有人可见
,
阅读 321
寒假作业打卡
#include <iostream>
using namespace std;
const int KMOD = 11;
string line;
int main(void) {
cin >> line;
string s;
for (const auto& c : line)
if (c != '-') s += c;
int sum = 0;
for (int i = 0, n = s.length() - 1; i < n; ++i)
sum += (s[i] - '0') * (i + 1);
int r = sum % KMOD; // r == remainder
if ((r == 10 && s.back() == 'X') || s.back() - '0' == r)
return puts("Right"), 0; // 这招是和复旦附中P云学的
line[line.size() - 1] = r == 10 ? 'X' : r + '0';
cout << line << endl;
return 0;
}