题目大意:图书的ISBN号有一个丢了,用问号表示丢失的号码,最后一个可以为10用X表示。最后那个编号取{0-10},其他取{0-9}
#include <iostream>
using namespace std;
int main()
{
char is[15];
scanf("%s",is);
int sum=0,index=0;
for(int i=9;i>=0;i--){
if(is[i]=='X'){//不能写is[9]
sum+=10;
continue;
}if(is[i]=='?'){
index=i;
continue;
}
sum+=((is[i]-48)*(10-i));
}
int n=(index==9)?10:9;
int tmp=0,ans=-1;
for(int i=0;i<=n;i++){
tmp=sum+i*(10-index);
if(tmp%11==0){
ans=i;
break;
}
}
if(ans==10)puts("X");
else printf("%d\n",ans);
return 0;
}