yizhidashayu @ 2023-08-27 16:23:46
第一个非AC的输入输出数据\
in0-670-82162-X
\
out0-670-82162-4
\
不知道为什么过了可是还是显示第一个非AC\
测试点信息
感谢大佬\
代码如下
#include <cstdio>
#include <cstring>
int main(){
char s[20];
scanf("%s",s);
int cur = 1,sum=0,m;
for(int i = 0; i < strlen(s)-2; i++){
if(s[i]!='-'){
sum+=(s[i]-'0')*cur;
cur++;
}
}
int t;
if(s[strlen(s)-1]=='X') t=10;
else t = s[strlen(s)-1]-'0';
m=sum%11;
if(m==t)printf("Right");
else {
if(m==10)printf("%s\bX",s);
else printf("%s\b%d",s,m);
}
return 0;
}
by AlexSong @ 2023-08-27 16:25:29
#include <bits/stdc++.h>
using namespace std;
int main()
{
char a[100];
scanf("%c-%c%c%c-%c%c%c%c%c-%c", &a[0], &a[1], &a[2], &a[3], &a[4], &a[5], &a[6], &a[7], &a[8], &a[9]);
int sum = 0,remainder;
char ch;
for (int i = 0; i < 9; i++)
{
sum += (a[i] - '0') * (i + 1);
}
remainder = sum % 11;
if (remainder == 10) ch = 'X';
else ch = remainder + '0';
if (ch == a[9]) printf("Right\n");
else
printf("%c-%c%c%c-%c%c%c%c%c-%c\n", a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], ch);
return 0;
}
by tyr_04 @ 2023-08-27 16:42:09
#include<bits/stdc++.h>
using namespace std;
int main()
{
string a;
int s=0,n1,n2,b,k=1;
cin>>a;
for(int i=0;i<12;i++)
{
if(a[i]=='-')
continue;
else
{
b=a[i]-'0';
s=s+b*k;
k++;
}
}
n1=a[12]-'0';
n2=s%11;
if(n1==n2||(n2==10&&a[12]=='X'))
cout<<"Right";
else
{
for(int i=0;i<12;i++)
cout<<a[i];
if(n2==10)
{
cout<<'X';
}
else
{
cout<<n2;
}
}
return 0;
}
by wuyinan @ 2023-08-27 17:35:25
是你的退格导致的
测评机会把退格当成输出
所以,你在输出中不能使用/b。
这是修改后的代码(修改的地方已注释)
/*#include<bits/stdc++.h>
using namespace std;*/
int main(){
char s[20];
scanf("%s",s);
int cur = 1,sum=0,m;
for(int i = 0; i < strlen(s)-2; i++){
if(s[i]!='-'){
sum+=(s[i]-'0')*cur;
cur++;
}
}
int t;
if(s[strlen(s)-1]=='X') t=10;
else t = s[strlen(s)-1]-'0';
m=sum%11;
if(m==t)printf("Right");
/*else {
if(m==10){
for(int i=0;i<=11;i++)
cout<<s[i];
cout<<"X";
}
else{
for(int i=0;i<=11;i++)
cout<<s[i];
cout<<m;
}*/
}
return 0;
}
修改后的代码已AC
附上我自己的屎山代码:
#include<bits/stdc++.h>
using namespace std;
int main(){
char a[15];
for(int i=1;i<=13;i++){
cin>>a[i];
}
int sr[11]={0};
sr[1]=(int)a[1]-48;
int j=2;
for(int i=3;i<=5;i++){
sr[j]=(int)a[i]-48;
j++;
}
for(int i=7;i<=11;i++){
sr[j]=(int)a[i]-48;
j++;
}
sr[10]=(int)a[13]-48;
int sbm=0;
for(int i=1;i<=9;i++){
sbm+=(sr[i]*i);
}
sbm=sbm%11;
if((sbm==sr[10])||(sbm==10&&a[13]=='X'))
cout<<"Right";
else{
for(int i=1;i<=12;i++)
cout<<a[i];
if(sbm==10)
cout<<"X";
else cout<<sbm;
}
return 0;
}
by wuyinan @ 2023-08-27 17:46:07
抱歉是\b
by yizhidashayu @ 2023-08-27 18:02:55
感谢大佬们