题解 | #[NOIP2008]ISBN号码#
[NOIP2008]ISBN号码
https://www.nowcoder.com/practice/95712f695f27434b9703394c98b78ee5
#include<cstdio> #include<iostream> #include<cstring> using namespace std; int main() { string s; //x-xxx-xxxxx-x cin>>s; int k=1,sum=0; for(int i=0;i<=0;i++) { sum+=(s[i]-'0')*k; k=k+1; } for(int i=2;i<=4;i++) { sum+=(s[i]-'0')*k; k=k+1; } for(int i=6;i<=10;i++) { sum+=(s[i]-'0')*k; k=k+1; } int last=s[12]-'0'; sum=sum%11; if(sum==last||(sum==10&&s[12]=='X')) cout<<"Right"; else { if(sum!=10) s[12]='0'+sum; else s[12]='X'; cout<<s; } return 0; }