思路是先把字符串里的数字提取出来进行操作后取模,
代码如下:
#include<bits/stdc++.h>
using namespace std;
int main(){
string s;
cin>>s;
int a[20],j=0,c=0;
for(int i=0;i<s.length()-2;i++){
if(s[i]-'0'>=0&&s[i]-'0'<=9){
a[j]=s[i]-'0';
j++;
}
}
for(int i=0;i<j;i++) c+=a[i]*(i+1);
if(c%11!=s[s.length()-1]-'0'&&c%11!=10) s[s.length()-1]=c%11+'0';
else if(c%11==10&&s[s.length()]!='X') s[s.length()-1]='X';
else{cout<<"Right";return 0;}
for(int i=0;i<s.length();i++) cout<<s[i];
return 0;
}