注意:50分 -- u=10,最后一位为'X'
代码:
#include <bits/stdc++.h>
using namespace std;
string s;
int a[12];
int main()
{
cin >> s;
a[1] = s[0] - '0';
a[2] = s[2] - '0';
a[3] = s[3] - '0';
a[4] = s[4] - '0';
a[5] = s[6] - '0';
a[6] = s[7] - '0';
a[7] = s[8] - '0';
a[8] = s[9] - '0';
a[9] = s[10] - '0';
long long int u = 0;
for (int i = 1; i <= 9; i++)
{
u = (u + a[i] * i) % 11;
}
if ((u == s[12] - '0') || (u == 10 && s[12] == 'X'))
{
cout << "Right";
}
else
{
if (u != 10)
{
cout << a[1] << "-" << a[2] << a[3] << a[4] << "-" << a[5] << a[6] << a[7] << a[8] << a[9] << "-" << u;
}
else
{
cout << a[1] << "-" << a[2] << a[3] << a[4] << "-" << a[5] << a[6] << a[7] << a[8] << a[9] << "-" << 'X';
}
}
}