求助,是我错了,还是洛谷日爆了???

P1055 [NOIP2008 普及组] ISBN 号码

wuyuchen5001143 @ 2023-01-05 19:50:22

80pts,第四个和第8个点错,我就下载了数据:

输入:6-670-82162-X

输出:Right

我放到计算机上运行,输出正确,为Right

但是,洛谷上提交,就提示读到的第一个是错了,正确是R,我的是6,就是告诉我,我输出的是:如果错误,则输出你认为是正确的 ISBN 号码 的情况......我换了好几种语言版本都还是错的,我的本地C++是-std=c++11,我用C++11、C++14、以及文件提交等方法,结果都一样......到底为什么???

以下是我的代码:

#include <iostream> 
using namespace std;
int main()
{
    string s;
    getline(cin,s);
    int t=1,x=0;
    for(int i=0;i<s.size()-2;i++) if(s[i]!='-')
    {
        x+=(s[i]-'0')*t;
        t++;
    }
    if(x%11==s[s.size()-1]-'0'||(x%11==10&&s[s.size()-1]=='X')) printf("Right\n");
    else
    {
        for(int i=0;i<s.size()-1;i++) printf("%c",s[i]);
        if(x%11!=10) printf("%d\n",x%11);
        else printf("X\n");
    }
    return 0;
}

求助!!!


by Eznibuil @ 2023-01-05 19:56:16

@wuyuchen5001143 用你谷 IDE 测了一下,你忘了去掉末尾换行


by Texas_the_Omertosa @ 2023-01-05 19:56:32

@wuyuchen5001143 我用亲身经历告诉你:

别用 getline

别用 getline

别用 getline

改成 cin 大概就行了


by chen_zhe @ 2023-01-05 19:56:46

@wuyuchen5001143 查了一下,数据末尾多了空格造成了问题。现在应该可以了。


by Eznibuil @ 2023-01-05 19:57:03

@olkieler 因为 getline 读入换行符/fad


by tbdsh @ 2023-01-05 19:57:15

cz楼下


by Texas_the_Omertosa @ 2023-01-05 19:58:05

@liubinze 如来原此


by Etic_HAO @ 2023-01-05 20:08:47

cz楼下的楼下的楼下的楼下


by wuyuchen5001143 @ 2023-01-05 20:40:26

@liubinze 不是说洛谷会忽略末尾换行码


by wuyuchen5001143 @ 2023-01-05 20:45:08

@chen_zhe 所以是数据末尾多了空格,现在提交这份代码,会AC吗??


by wuyuchen5001143 @ 2023-01-05 20:47:14

@chen_zhe 哦,就是说是数据问题是吗,现在直接提交就行是吧?


| 下一页