编译器测试的都没问题,但全RE(python)

P5730 【深基5.例10】显示屏

xm_and_xh @ 2023-07-05 16:25:50

我改了一下午,一直是RE,快疯了!

n=int(input())
inp=input()
a=0
b=0

num=['XXXX.XX.XX.XXXX',\
     '..X..X..X..X..X',\
     'XXX..XXXXX..XXX',\
     'XXX..XXXX..XXXX',\
     'X.XX.XXXX..X..X',\
     'XXXX..XXX..XXXX',\
     'XXXX..XXXX.XXXX',\
     'XXX..X..X..X..X',\
     'XXXX.XXXXX.XXXX',\
     'XXXX.XXXX..XXXX']
for i in range(5):
    for j in inp:
        print(num[int(j)][a:a+3],end='')
        b+=1
        if b==n:
            print('\n',end='')
        else:
            print('.',end='')
    b = 0
    a+=3

输出的和样例一模一样 样例输入:

6
114514

样例要求输出:

..X...X.X.X.XXX...X.X.X
..X...X.X.X.X.....X.X.X
..X...X.XXX.XXX...X.XXX
..X...X...X...X...X...X
..X...X...X.XXX...X...X

我用编译器输出的:

..X...X.X.X.XXX...X.X.X
..X...X.X.X.X.....X.X.X
..X...X.XXX.XXX...X.XXX
..X...X...X...X...X...X
..X...X...X.XXX...X...X

我还直接分别复制了两个输出,并把第一个和第二个分别赋值,然后print(a==b)输出的是True,说明这两个是一样的,但是全RE,就算程序有问题第一个测试点也应该可以AC才对,况且编译器上一切运行正常- 请问大佬们这是为什么,程序的问题究竟在哪


by 编码落寞 @ 2023-07-05 16:35:45

@xm_and_xh

加.strip()可以去掉输入的数据的\r。洛谷有些数据是由Linux生成,换行会带上一个\r。有些题会因为这个原因re或者wa。

这个是我在之前讨论区找到的。你可试试吧inp那里加上试试


by xm_and_xh @ 2023-08-22 09:45:30

@编码落寞 谢谢,过了,一开始看成

.split()

了。。。。。。


|