帮我看看我的代码哪里出问题了吧,与题目给的例子运行结果一样,但只有40分

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

QYlucky @ 2022-04-15 16:45:22

#include<bits/stdc++.h>
using namespace std;//本题主要用到了打表 
int n;
string s[5],a[10][5],str;//s表示最终输出的结果。a[0][1]表示数字0的第一行
//a[0][2]表示数字0的第二行,a[1][1]表示数字1的第一行。str表示输入的一系列数字 
int main(){
    a[0][0]="XXX";
    a[0][1]="X.X";
    a[0][2]="X.X";
    a[0][3]="X.X";  
    a[0][4]="XXX";

    a[1][0]="..X";
    a[1][1]="..X";
    a[1][2]="..X";
    a[1][3]="..X";  
    a[1][4]="..X";

    a[2][0]="XXX";
    a[2][1]="..X";
    a[2][2]="XXX";
    a[2][3]="X..";  
    a[2][4]="XXX";

    a[3][0]="XXX";
    a[3][1]="..X";
    a[3][2]="XxX";
    a[3][3]="..X";  
    a[3][4]="XXX";

    a[4][0]="X.X";
    a[4][1]="X.X";
    a[4][2]="XXX";
    a[4][3]="..X";  
    a[4][4]="..X";

    a[5][0]="XXX";
    a[5][1]="X..";
    a[5][2]="XXX";
    a[5][3]="..X";  
    a[5][4]="XXX";

    a[6][0]="XXX";
    a[6][1]="X..";
    a[6][2]="XXX";
    a[6][3]="X.X";  
    a[6][4]="XXX";

    a[7][0]="XXX";
    a[7][1]="..X";
    a[7][2]="..X";
    a[7][3]="..X";  
    a[7][4]="..X";

    a[8][0]="XXX";
    a[8][1]="X.X";
    a[8][2]="XXX";
    a[8][3]="X.X";  
    a[8][4]="XXX";

    a[9][0]="XXX";
    a[9][1]="X.X";
    a[9][2]="XXX";
    a[9][3]="..X";  
    a[9][4]="XXX";

    cin>>n>>str;
    for(int i=0;i<n;i++){
        int t=str[i]-'0';
        for(int j=0;j<5;j++){
            s[j]=s[j]+a[t][j];
            if(i!=n-1) s[j]=s[j]+".";
        }
    }
    for(int i=0;i<5;i++)
     cout<<s[i]<<endl;

    return 0;
}

by Bbaka @ 2022-04-15 16:48:06

@QYlucky

    a[3][0]="XXX";
    a[3][1]="..X";
    a[3][2]="XxX";
    a[3][3]="..X";  
    a[3][4]="XXX";

这里你有个X小写了


by QYlucky @ 2022-04-15 16:54:08

@Bbaka 感谢感谢感谢!!!


|