洛谷-P 1055 ISBN番号-題解


【洛谷】P 1055 ISBN番号【問題解】
この問題は洛谷の中で普及-難しいですが、私はやはり簡単だと思います.タイトルには数字が10桁、識別コードが1桁あると書かれているので、前の9つの数字にどれだけのmod 11を乗せればいいかを判断すればいいのです!注意:残りが10の場合、Xです!そしてchar配列を使います!コード:
#include
using namespace std;
int main(){
     
	char isbn[1001]={
     };
	cin>>isbn;
	int num=0;
	for(int i=0,j=0;j<9;i++,j++){
     
		if(isbn[i]=='-')j--;
		else num+=(isbn[i]-48)*(j+1);
	}if(isbn[12]=='X')isbn[12]=58;
	if(num%11==isbn[12]-48)cout<<"Right";
	else{
     
		for(int i=0;i<12;i++)cout<<isbn[i];
		if(num%11==10)cout<<'X';
		else cout<<num%11;
	}return 0;
}

皆さんはこの問題が簡単だと思いますか?