竞赛
考级
#include <iostream> #include <cstring> using namespace std; int main(){ char a[20]; char answer; int sum=0,k=1; cin>>a; for(int i=0;i<strlen(a)-2;i++){ if(a[i]!='-'){ sum+=(a[i]-48)*k; k++ ; } } char temp=a[strlen(a)-1]; answer=sum%11+48; if(answer=='9'+1) answer='X'; if(answer==temp) cout<<"Right"; else{ for(int i=0;i<strlen(a)-1;i++){ cout<<a[i]; } cout<<answer; } return 0; }
操宇
这道题就是字符串的基础分解辣!!!!
YULIN
a = input().replace("-", "") b = 0 for i, c in enumerate(a[:-1]): d = int(c) * (i + 1) b += d sum = b % 11 if sum == 10: num = "X" else: num = str(sum) if a[-1] == num: print("Right") else: print("{}-{}-{}-{}".format(a[0], a[1:4], a[4:9], num))
我是垃圾
作者太菜,敬请谅解
聪明的人类📬📬📬
#include <iostream> using namespace std; int main(){ string a,b; cin>>a; int c=0; for(int i=0;i<a.size();i++){ if(a[i]!='-'){ b+=a[i]; } } for(int i=0;i<b.size()-1;i++){ if(b[i]'X'){ c+=10*(i+1); }else{ c+=(b[i]-'0')*(i+1); } } if(c%1110){ if(b[9]=='X'){ cout<<"Right"; } else{ a[12]='X'; cout<<a; } } else if(b[9]-'0'==c%11){ cout<<"Right"; } else{ a[12]=c%11+'0'; cout<<a; } return 0; }
枫原万叶 [须佐能乎]
135****2872
#include<bits/stdc++.h> using namespace std; int main() { char s[14]; int a[14],m=0; cin>>s; a[1]=s[0]-'0'; a[2]=s[2]-'0'; a[3]=s[3]-'0'; a[4]=s[4]-'0'; a[5]=s[6]-'0'; a[6]=s[7]-'0'; a[7]=s[8]-'0'; a[8]=s[9]-'0'; a[9]=s[10]-'0'; if(s[12]'X') a[10]=10; else a[10]=s[12]-'0'; for(int i=1;i<=9;i++) { m+=a[i]*i; } m%=11; if(ma[10]) cout<<"Right"; else {for(int i=0;i<12;i++) cout<<s[i]; if(m==10) cout<<'X'; else cout<<m; } return 0; }
黑客_复仇者_ZDZL _大奶龙
李睿尧(不加团队)
༺ཌༀ元气满满ༀད༻
闪电九尾狐
#include<bits/stdc++.h> using namespace std; long long i,s,a,b,c,d,m; char d1; int main(){ scanf ( "%d-%d-%d-%c" , &a , &b , &c , &d1 ); //这段是精髓 if ( d1 == 'X' ) //判断X与10 d = 10; else d = d1 - 48; m = ( a * 1000 + b ) * 100000 + c; //过滤中划线 for ( i = 1 ; i <= 9 ; i++ ) //依次算 { s += m % 10 * ( 9 - i + 1 ); //精髓**** %= 11; //直接求11的余数即可 m /= 10; //删除最后一位 } if ( s == d ) //判断是否正确 cout << "Right"; //正确就输出 else //不正确的处理方法 { cout << a << "-" << b << "-" << c << "-"; if ( s == 10 ) //同样,注意X和10 cout << "X"; else cout << s; } return 0; //皮一句,必须要打!否则爆0! }
妖涩傻猫 :D
准
acgoacgo
正在减肥的吃货
真的简单啊这个题,往年的NOIP是很简单。 模拟就行了awa。
叫我杨同学
#include <bits/stdc++.h> using namespace std; char a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,x;//建立变量 int sum,ys; int main() { cin>>a1>>x>>a2>>a3>>a4>>x>>a5>>a6>>a7>>a8>>a9>>x>>a10;//输入 sum=(a1-'0')*1+(a2-'0')*2+(a3-'0')*3+(a4-'0')*4+(a5-'0')*5+(a6-'0')*6+(a7-'0')*7+(a8-'0')*8+(a9-'0')*9;//加加乘乘 ys=sum%11;//%掉 if(ysa10-'0'||ys10&&a10=='X') cout<<"Right";//判断+修改 else{ cout<<a1<<'-'<<a2<<a3<<a4<<'-'<<a5<<a6<<a7<<a8<<a9<<'-'; if(ys<10) cout<<ys;else cout<<'X'; } }
shenzhangzheng
枫岚
射手骑着龙——互
AC来了
毛奕程
共48条