5 solutions
-
4
只有我发题解?👀️ 😕
#include <bits/stdc++.h> using namespace std; int sum,isbn[10]; int main(int argc, char **argv){ char c;int idx = 1,n; while (cin >> c){ n = c - '0'; if (idx == 10){ break; } if (c == '-'){ continue; } isbn[idx] = n; sum += idx * n; idx++; } cin >> c; // 可能输入 X, 所以用 c n = c - '0'; if (c == 'X' && sum % 11 == 10){ // 特判正确 cout << "Right"; }else if (sum % 11 == n){ // 正常正确 cout << "Right"; }else{ // 错误 cout << isbn[1] << '-'; for (int i = 2;i <= 4;i++){ cout << isbn[i]; } cout << '-'; for (int i = 5;i <= 9;i++){ cout << isbn[i]; } cout << '-' << sum % 11; // 别忘了输出的是新的识别码 } return 0; }
-
1
YI TUO SHI
#include<bits/stdc++.h> using namespace std; signed main(){ char n; char gang[8],a[10]; cin>>a[1]; cin>>gang[1]; cin>>a[2]; cin>>a[3]; cin>>a[4]; cin>>gang[2]; cin>>a[5]; cin>>a[6]; cin>>a[7]; cin>>a[8]; cin>>a[9]; cin>>gang[4]; cin>>n;//输入 int s=0; for(int i=1;i<=9;i++){ s+=(a[i]-48)*i;//求出识别码 } if(s%11==n-48||s%11==10&&n=='X'/*特判X*/){ cout<<"Right"; } else{ cout<<a[1]<<"-"<<a[2]<<a[3]<<a[4]<<"-"<<a[5]<<a[6]<<a[7]<<a[8]<<a[9]<<"-"<<s%11; }
-
1
#include<bits/stdc++.h> using namespace std; char a[20]; int b[20]; int main() { int sum = 0; char x; cin >> a[1] >> x; cin >> a[2] >> a[3] >> a[4] >> x; cin >> a[5] >> a[6] >> a[7] >> a[8] >> a[9] >> x; cin >> a[10]; for(int i = 1; i <= 9;i++) { b[i] = a[i] - '0'; sum += b[i]*i; } b[10] = a[10] - '0'; sum %= 11; if(sum == 10) { if('X' == a[10]) { cout << "Right"; return 0; } else { cout << a[1] << "-" << a[2] << a[3] << a[4] << "-" << a[5] << a[6] << a[7] << a[8] << a[9] << "-" << 'X'; } } if(sum == b[10]) { cout << "Right"; } else { cout << a[1] << "-" << a[2] << a[3] << a[4] << "-" << a[5] << a[6] << a[7] << a[8] << a[9] << "-" << sum; } return 0; }
-
0
#include #include #include using namespace std; string a; int main(){ int k=1,s=0; cin>>a; for(int i=0;i<a.size()-1;i++){ if(a[i]!='-'){ s=s+(a[i]-'0')*k; k++; } } s=s%11; if(s10&&a[a.size()-1]'X'){ cout<<"Right"; return 0; } if(s10&&a[a.size()-1]!='X'){ for(int i=0;i<a.size()-1;i++){ cout<<a[i]; } cout<<"X"; return 0; } if(sa[a.size()-1]-'0'){ cout<<"Right"; } else{ for(int i=0;i<a.size()-1;i++){ cout<<a[i]; } cout<<s; } }
-
0
#include<bits/stdc++.h> using namespace std; string s,s2=""; int sum=0; int main(){ getline(cin,s); for(int i=0;i<s.size();i++){ if(s[i]!='-'){ s2+=s[i]; } } for(int j=0;j+1<=9;j++){ sum+=((int(s2[j])-48)*(j+1)); } if(int(s2[s2.size()-1])-48sum%11||s2[9]'X'&&sum%11==10){ cout<<"Right"; } else{ cout<<s2[0]<<'-'<<s2[1]<<s2[2]<<s2[3]<<'-'<<s2[4]<<s2[5]<<s2[6]<<s2[7]<<s2[8]<<'-'<<sum%11; } return 0; }
- 1
Information
- ID
- 160
- Time
- 1000ms
- Memory
- 16MiB
- Difficulty
- 7
- Tags
- # Submissions
- 139
- Accepted
- 35
- Uploaded By