luogufather @ 2022-07-26 07:46:16
#include<bits/stdc++.h>
#define ull unsigned long long
using namespace std;
string n,m;
ull a,b,c,d,e,f,g,h,i,x,y;
int main()
{
cin>>n;
a=n[0]-48;b=n[2]-48;
c=n[3]-48;d=n[4]-48;
e=n[6]-48;f=n[7]-48;
g=n[8]-48;h=n[9]-48;
i=n[10]-48;
x=n[12]-48;
y=a*1+b*2+c*3+d*4+e*5+f*6+g*7+h*8+i*9;
if(y%11==x) cout<<"Right";
else
{
if(y%11==10)
cout<<a<<'-'<<b<<c<<d<<'-'<<e<<f<<g<<h<<i<<'-'<<'X';
if(y%11<10)
cout<<a<<'-'<<b<<c<<d<<'-'<<e<<f<<g<<h<<i<<'-'<<y%11;
}
return 0;
}
/*
1-010-00100-6*/
80分,不知道哪里出错了
by jiangxiaohai @ 2022-07-26 08:02:15
hake数据
输入:
2-232-33323-X
输出:
Right
你的输出2-232-33323-X
问题出在第十四行x取值,要分最后一位为数字和最后一位为X两种情况讨论,最后一位是X的时候就不能直接拿 最后的字符-48 给x赋值
by luogufather @ 2022-07-26 08:33:33
@jiangxiaohai AC了,谢谢大佬
by LeTu_Jun @ 2022-07-26 08:36:35
用户名好评
by luogufather @ 2022-08-18 20:40:08
@LeTu_Jun [doge]