题目链接:https://www.luogu.org/problem/P1055
思路://思路:直接生成一个新的字符串,和之前的比较一下即可。符合Right。不符合,输出新的
#include<bits/stdc++.h>
using namespace std;
int main(void) {
char a[20], b[20];
gets_s(a);
strcpy(b, a);
int sum = 0, k = 1;
for (int i = 0; i <= 10; i++)
if (a[i] >= '0' && a[i] <= '9') {
sum += (a[i] - '0') * k;
k++;
}
//接下来直接生成新的字符串,再和原来的比较
sum %= 11;
if (sum == 10) {
b[12] = 'X';
}
else
b[12] = sum + '0';
if (strcmp(a, b) == 0)
printf("Right\n");
else
printf("%s\n", b);
return 0;
}