为什么我能过? 求助大佬

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

愚末语tenseTL @ 2020-10-26 17:38:10

题目不是说不超过100个数吗? 一开始我吧数组设成s[6][500] 结果全部RE 但当我设成s[6][8]就神奇的全部的AC了 这是为什么呢?

#include<iostream>
#include<cstdio>
using namespace std;
char s[6][8];
void ott(int begin,char num)
{
    for(int i=begin;i<=begin+3;i++)
    {
        for(int j=1;j<=5;j++)
        s[i][j]='.';
    }
    if(num=='0')
    {
        for(int i=1;i<=5;i++)
        {
        s[begin][i]='X';
        s[begin+2][i]='X';
        }
        s[begin+1][1]='X';
        s[begin+1][5]='X';
    }
    if(num=='1')
    {
        for(int i=1;i<=5;i++)
        s[begin+2][i]='X';
    }
    if(num=='2')
    {
        for(int i=begin;i<=begin+2;i++)
        {
            s[i][1]='X';
            s[i][3]='X';
            s[i][5]='X';
        }
        s[begin][4]='X';
        s[begin+2][2]='X';
    }
    if(num=='3')
    {
            for(int i=begin;i<=begin+2;i++)
        {
            s[i][1]='X';
            s[i][3]='X';
            s[i][5]='X';
        }
        s[begin+2][4]='X';
        s[begin+2][2]='X';
    }
    if(num=='4')
    {
        for(int i=1;i<=5;i++)
        {
            s[begin+2][i]='X';
        }
        for(int i=1;i<=3;i++)
        {
            s[begin][i]='X';
        }
        s[begin+1][3]='X'; 
    }
    if(num=='5')
    {
        for(int i=begin;i<=begin+2;i++)
        {
            s[i][1]='X';
            s[i][3]='X';
            s[i][5]='X';
        }
        s[begin+2][4]='X';
        s[begin][2]='X';
    }
    if(num=='6')
    {
        for(int i=begin;i<=begin+2;i++)
        {
            s[i][1]='X';
            s[i][3]='X';
            s[i][5]='X';
        }
        s[begin+2][4]='X';
        s[begin][2]='X';
        s[begin][4]='X';
    }
    if(num=='7')
    {
        for(int i=begin;i<=begin+2;i++)
        s[i][1]='X';
        for(int i=1;i<=5;i++)
        s[begin+2][i]='X';
    }
    if(num=='8')
    {
            for(int i=begin;i<=begin+2;i++)
        {
            s[i][1]='X';
            s[i][3]='X';
            s[i][5]='X';
        }
        s[begin+2][4]='X';
        s[begin][2]='X';
        s[begin][4]='X';
        s[begin+2][2]='X';
    }
    if(num=='9')
    {
            for(int i=begin;i<=begin+2;i++)
        {
            s[i][1]='X';
            s[i][3]='X';
            s[i][5]='X';
        }
        s[begin+2][4]='X';
        s[begin][2]='X';
        s[begin+2][2]='X';
    }
}
int main()
{
    int n;
    char t;
    cin>>n;
    for(int i=0;i<n;i++)
    {
        cin>>t;
        ott(i*4,t);
    }

    for(int j=1;j<=5;j++)
    {
    for(int i=0;i<4*n-1;i++)
    {

        cout<<s[i][j];
    }
    cout<<endl;
    }
    return 0;
 } 

by 四明狂客 @ 2020-10-26 18:54:55

神奇


by Kkfrqwfvqb @ 2021-01-03 20:25:54

无法解释


|