又又一个无脑题解
2023-01-16 10:29:19
发布于:浙江
164阅读
0回复
0点赞
这题要考虑两种情况,一种是正常的,在读入时省略掉-然后判断即可,另一种要在判断的基础上把最后一列差多少补上
总体难度不高
#include <iostream>
using namespace std;
int main() {
char a[18];
int sum=0,bs=1,b,ls;
for(int i=0; i<13; i++) {
cin>>a[i];
}
for(int i=0; i<11; i++) {
if(a[i]!='-') {
int b=a[i];
b-=48;
sum+=bs*b;
bs++;
}
}
ls=int(a[12]-48);
if(sum%11==ls && a[12]>='0' && a[12]<='9' ||sum%11==10 && a[12]=='X') {
cout<<"Right";
} else {
for(int i=0; i<12; i++) {
cout<<a[i];
}
if(sum%11==10) {
cout<<'X';
} else {
cout<<sum%11;
}
}
return 0;
}
这里空空如也
有帮助,赞一个