八十分求助,第四个和第七个测试点过不去!

P1055 [NOIP2008 普及组] ISBN 号码

Yae___Miko @ 2022-06-16 13:50:12

本蒟蒻今年才注册洛谷,是一名六年级小学生。 今天遇到问题后,进入讨论区,发现不少小伙伴也和我差不多,错第四和第七测试点。下面是代码

#include<bits/stdc++.h>
using namespace std;
#define sb long long
sb x,k=1,a;
string s;
int main(){cin>>s;
           for(int i=0;i<s.size()-1;i++)
           {
               if(s[i]>='0'&&s[i]<='9')
                  x=x+(s[i]-'0')*k,k++;
           }
           a=s[s.size()-1]-'0';
           if(x%11==a)
              printf("Right");
           else
           {
              for(int i=0;i<s.size()-1;i++)
                  cout<<s[i];
              if(x%11==10)
                 printf("X");
              else printf("%d",x%11);
           }
    return 0;
}

求大佬帮忙,找出本蒟蒻的问题。


by xiaohuzai @ 2022-06-16 14:17:17

本人蒟蒻,你的正确性判断忽略了x%11==10的情况 即

if(x%11==a)
printf("Right");

这部分


|