和标准答案一模一样但是全部WA

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

Yungchit @ 2022-02-08 16:00:21

![]()![这是下载的第一个数据点的标准输出和我的答案的对比](C:\Users\27493\OneDrive\图片\屏幕快照)

```cpp
#include <iostream>

using namespace std;

int main()
{
    int n,k;
    scanf("%d",&n);
    n++;
    //cout<<n<<endl;
    char h[105];
    for(k=0;k<n;k++)
    {
        scanf("%c",&h[k]);
    }
    for(int i=0;i<5;i++)
    {
        switch(i)
        {
            case 0:
                for(int j=1;j<=n;j++)
                {
                    switch(h[j])
                    {
                    case '0':
                        printf("XXX");
                        break;
                    case '1':
                        printf("..X");
                        break;
                    case '2':
                        printf("XXX");
                        break;
                    case '3':
                        printf("XXX");
                        break;
                    case '4':
                        printf("X.X");
                        break;
                    case '5':
                        printf("XXX");
                        break;
                    case '6':
                        printf("XXX");
                        break;
                    case '7':
                        printf("XXX");
                        break;

                    case '8':
                        printf("XXX");
                        break;
                    case '9':
                        printf("XXX");
                        break;
                    }
                    if(j-n){printf((j==(n-1))?"":".");/*cout<<j;*/}
                }
                cout<<endl;
                break;
            case 1:
                for(int j=1;j<=n;j++)
                {
                    switch(h[j])
                    {
                    case '0':
                        printf("X.X");
                        break;
                    case '1':
                        printf("..X");
                        break;
                    case '2':
                        printf("..X");
                        break;
                    case '3':
                        printf("..X");
                        break;
                    case '4':
                        printf("X.X");
                        break;
                    case '5':
                        printf("X..");
                        break;
                    case '6':
                        printf("X..");
                        break;
                    case '7':
                        printf("..X");
                        break;

                    case '8':
                        printf("X.X");
                        break;
                    case '9':
                        printf("X.X");
                        break;
                    }
                    if(j-n){printf((j==(n-1))?"":".");/*cout<<j;*/}
                }
                cout<<endl;
                break;
            case 2:
                for(int j=1;j<=n;j++)
                {
                    switch(h[j])
                    {
                    case '0':
                        printf("X.X");
                        break;
                    case '1':
                        printf("..X");
                        break;
                    case '2':
                        printf("XXX");
                        break;
                    case '3':
                        printf("XXX");
                        break;
                    case '4':
                        printf("XXX");
                        break;
                    case '5':
                        printf("XXX");
                        break;
                    case '6':
                        printf("XXX");
                        break;
                    case '7':
                        printf("..X");
                        break;

                    case '8':
                        printf("XXX");
                        break;
                    case '9':
                        printf("XXX");
                        break;
                    }
                    if(j-n){printf((j==(n-1))?"":".");/*cout<<j;*/}
                }
                cout<<endl;
                break;
            case 3:
                for(int j=1;j<=n;j++)
                {
                    switch(h[j])
                    {
                    case '0':
                        printf("X.X");
                        break;
                    case '1':
                        printf("..X");
                        break;
                    case '2':
                        printf("X..");
                        break;
                    case '3':
                        printf("..X");
                        break;
                    case '4':
                        printf("..X");
                        break;
                    case '5':
                        printf("..X");
                        break;
                    case '6':
                        printf("X.X");
                        break;
                    case '7':
                        printf("..X");
                        break;

                    case '8':
                        printf("X.X");
                        break;
                    case '9':
                        printf("..X");
                        break;
                    }
                    if(j-n){printf((j==(n-1))?"":".");/*cout<<j;*/}
                }
                cout<<endl;
                break;
            case 4:
                for(int j=1;j<=n;j++)
                {
                    switch(h[j])
                    {
                    case '0':
                        printf("XXX");
                        break;
                    case '1':
                        printf("..X");
                        break;
                    case '2':
                        printf("XXX");
                        break;
                    case '3':
                        printf("XXX");
                        break;
                    case '4':
                        printf("..X");
                        break;
                    case '5':
                        printf("XXX");
                        break;
                    case '6':
                        printf("XXX");
                        break;
                    case '7':
                        printf("..X");
                        break;

                    case '8':
                        printf("XXX");
                        break;
                    case '9':
                        printf("XXX");
                        break;
                    }
                    if(j-n){printf((j==(n-1))?"":".");/*cout<<j;*/}
                }
                break;
        }
    }
    return 0;
}

by a1029 @ 2022-02-08 17:02:07

肯定是他提交的时候正好评测机炸了


by Yungchit @ 2022-02-08 17:07:11

@我不是管理员 谢谢orz,我也觉得奇怪。。。等下再提交一下,或者换个方法重写一遍


by 我不是管理员 @ 2022-02-08 17:15:55

@a1029 应该不是,因为我的电脑上的fc命令也指出了之一差别。fc平时却从不指出这一点,似乎是文件内容导致这个空行很重要。


by 我不是管理员 @ 2022-02-08 17:16:39

手滑,“之一”改成“这一”


by Yungchit @ 2022-02-08 17:19:34

@我不是管理员 不过按理来说我的代码最后一行没有换行,为什么多了一行


by 我不是管理员 @ 2022-02-08 17:35:34

@Yungchit 抱歉,弄错了,是答案比你多一个换行(也就是你少了一个换行)


by Yungchit @ 2022-02-08 17:40:42

@我不是管理员 是所有的测试数据还是某一部分


by 我不是管理员 @ 2022-02-08 17:58:03

@Yungchit 准确说,是所有你WA了的数据。

反正,多一个换行肯定没错。


上一页 |