题目描述:
![](https://i-blog.csdnimg.cn/blog_migrate/90252934a2b61c2a7c0758268235f11b.png)
思路:
- idx记录已经保存了遍历的数的个数,同时也是乘法的数据,当记录到10的时候,去检验是否正确。
- res为最终结果与最后一位进行比较。
整体简单,直接附代码
代码:
#include<bits/stdc++.h>
using namespace std;
string s;
int main()
{
cin>>s;
int idx=1,flag=0;
int res=0;
for(int i=0;i<s.size();i++)
{
if((s[i]>='0'&&s[i]<='9')||s[i]=='X')
{
if(idx==10)
{
//cout<<res<<endl;
res=res%11;
if(res==10&&s[i]=='X') cout<<"Right"<<endl;
else if(res==(s[i]-'0')) cout<<"Right"<<endl;
else
{
for(int j=0;j<s.size()-1;j++) cout<<s[j];
if(res<10) cout<<res<<endl;
else cout<<"X"<<endl;
}
}
res=res+(s[i]-'0')*idx;
idx++;
}
}
return 0;
}