#include<iostream>
#include<string>
using namespace std;
int main(){
string s1;
cin>>s1;//读取输入
int total=0;//加权求和
int j=1;//加权系数,初始值为1
char c;//string中的字符
for(int i=0;i<s1.size();i++){//string类型s1中最后一个元素为s1[s1.size()-1]
c=s1[i];
if(isdigit(c)) {//string中该字符为'0'~'9'中的一个
total=total+(c-'0')*j;
j++;
}
if(j==10) break;
}
if((total%11==s1[s1.size()-1]-'0')||(total%11==10&&s1[s1.size()-1]=='X')) cout<<"Right";
else if(total%11==10){
s1[s1.size()-1] = 'X';
cout<<s1;
}
else {
s1[s1.size()-1] = (total%11) +'0';
cout<<s1;
}
}
要注意还有一种余数为10的情况。这种情况与需要考虑Right与Error的情况。
余数为10的测试点为5个,其中两个测试点输出为Right。