求助!

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

Ghy_boy @ 2024-01-29 10:54:50

#include<bits/stdc++.h>
using namespace std;
int main()
{
    int a;
    cin>>a;
    int const s=a+9,s1=a*4;
    char c[s],ans[s1][5];
    int num[s];
    for(int i=0;i<a;i++){
        cin>>c[i];
        num[i]=c[i]-'0';
    }
        for(int j=0,i=1;j<s1-2;j++){//lie 1
            for(int k=0;k<a;k++){//number
            if(num[k]==0){
                ans[i][j]='X';ans[i][j+1]='X';ans[i][j+2]='X';
            }
            if(num[k]==1){
                ans[i][j]='.';ans[i][j+1]='.';ans[i][j+2]='X';
            }
            if(num[k]==2){
                ans[i][j]='X';ans[i][j+1]='X';ans[i][j+2]='X';
            }
            if(num[k]==3){
                ans[i][j]='X';ans[i][j+1]='X';ans[i][j+2]='X';
            }
            if(num[k]==4){
                ans[i][j]='X';ans[i][j+1]='.';ans[i][j+2]='X';
            }
            if(num[k]==5){
                ans[i][j]='X';ans[i][j+1]='X';ans[i][j+2]='X';
            }
            if(num[k]==6){
                ans[i][j]='X';ans[i][j+1]='X';ans[i][j+2]='X';
            }
            if(num[k]==7){
                ans[i][j]='X';ans[i][j+1]='X';ans[i][j+2]='X';
            }
            if(num[k]==8){
                ans[i][j]='X';ans[i][j+1]='X';ans[i][j+2]='X';
            }
            if(num[k]==9){
                ans[i][j]='X';ans[i][j+1]='X';ans[i][j+2]='X';
            }
        }
    }
    for(int j=4,i=2;j<s1-2;j++){//lie 2
            for(int k=0;k<a;k++){//number
            ans[i][j-1]='.';
            if(num[k]==0){
                ans[i][j]='X';ans[i][j+1]='.';ans[i][j+2]='X';
            }
            if(num[k]==1){
                ans[i][j]='.';ans[i][j+1]='.';ans[i][j+2]='X';
            }
            if(num[k]==2){
                ans[i][j]='.';ans[i][j+1]='.';ans[i][j+2]='X';
            }
            if(num[k]==3){
                ans[i][j]='.';ans[i][j+1]='.';ans[i][j+2]='X';
            }
            if(num[k]==4){
                ans[i][j]='X';ans[i][j+1]='.';ans[i][j+2]='X';
            }
            if(num[k]==5){
                ans[i][j]='X';ans[i][j+1]='.';ans[i][j+2]='.';
            }
            if(num[k]==6){
                ans[i][j]='X';ans[i][j+1]='.';ans[i][j+2]='.';
            }
            if(num[k]==7){
                ans[i][j]='.';ans[i][j+1]='.';ans[i][j+2]='X';
            }
            if(num[k]==8){
                ans[i][j]='X';ans[i][j+1]='.';ans[i][j+2]='X';
            }
            if(num[k]==9){
                ans[i][j]='X';ans[i][j+1]='.';ans[i][j+2]='X';
            }
        }
    }
    for(int j=8,i=3;j<s1-2;j++){//lie 3
            for(int k=0;k<a;k++){//number
            ans[i][j-1]='.';
            if(num[k]==0){
                ans[i][j]='X';ans[i][j+1]='.';ans[i][j+2]='X';
            }
            if(num[k]==1){
                ans[i][j]='.';ans[i][j+1]='.';ans[i][j+2]='X';
            }
            if(num[k]==2){
                ans[i][j]='X';ans[i][j+1]='X';ans[i][j+2]='X';
            }
            if(num[k]==3){
                ans[i][j]='X';ans[i][j+1]='X';ans[i][j+2]='X';
            }
            if(num[k]==4){
                ans[i][j]='X';ans[i][j+1]='X';ans[i][j+2]='X';
            }
            if(num[k]==5){
                ans[i][j]='X';ans[i][j+1]='X';ans[i][j+2]='X';
            }
            if(num[k]==6){
                ans[i][j]='X';ans[i][j+1]='X';ans[i][j+2]='X';
            }
            if(num[k]==7){
                ans[i][j]='.';ans[i][j+1]='.';ans[i][j+2]='X';
            }
            if(num[k]==8){
                ans[i][j]='X';ans[i][j+1]='X';ans[i][j+2]='X';
            }
            if(num[k]==9){
                ans[i][j]='X';ans[i][j+1]='X';ans[i][j+2]='X';
            }
        }
    }
    for(int j=12,i=4;j<s1;j++){//lie 4
            for(int k=0;k<a;k++){//number
            ans[i][j-1]='.';
            if(num[k]==0){
                ans[i][j]='X';ans[i][j+1]='.';ans[i][j+2]='X';
            }
            if(num[k]==1){
                ans[i][j]='.';ans[i][j+1]='.';ans[i][j+2]='X';
            }
            if(num[k]==2){
                ans[i][j]='X';ans[i][j+1]='.';ans[i][j+2]='.';
            }
            if(num[k]==3){
                ans[i][j]='.';ans[i][j+1]='.';ans[i][j+2]='X';
            }
            if(num[k]==4){
                ans[i][j]='.';ans[i][j+1]='.';ans[i][j+2]='X';
            }
            if(num[k]==5){
                ans[i][j]='.';ans[i][j+1]='.';ans[i][j+2]='X';
            }
            if(num[k]==6){
                ans[i][j]='X';ans[i][j+1]='.';ans[i][j+2]='X';
            }
            if(num[k]==7){
                ans[i][j]='.';ans[i][j+1]='.';ans[i][j+2]='X';
            }
            if(num[k]==8){
                ans[i][j]='X';ans[i][j+1]='.';ans[i][j+2]='X';
            }
            if(num[k]==9){
                ans[i][j]='.';ans[i][j+1]='.';ans[i][j+2]='X';
            }
        }
    }
    for(int j=16,i=5;j<s1;j++){//lie 5
            for(int k=0;k<a;k++){//number
            ans[i][j-1]='.';
            if(num[k]==0){
                ans[i][j]='X';ans[i][j+1]='.';ans[i][j+2]='X';
            }
            if(num[k]==1){
                ans[i][j]='.';ans[i][j+1]='.';ans[i][j+2]='X';
            }
            if(num[k]==2){
                ans[i][j]='X';ans[i][j+1]='X';ans[i][j+2]='X';
            }
            if(num[k]==3){
                ans[i][j]='X';ans[i][j+1]='X';ans[i][j+2]='X';
            }
            if(num[k]==4){
                ans[i][j]='.';ans[i][j+1]='.';ans[i][j+2]='X';
            }
            if(num[k]==5){
                ans[i][j]='X';ans[i][j+1]='X';ans[i][j+2]='X';
            }
            if(num[k]==6){
                ans[i][j]='X';ans[i][j+1]='X';ans[i][j+2]='X';
            }
            if(num[k]==7){
                ans[i][j]='.';ans[i][j+1]='.';ans[i][j+2]='X';
            }
            if(num[k]==8){
                ans[i][j]='X';ans[i][j+1]='X';ans[i][j+2]='X';
            }
            if(num[k]==9){
                ans[i][j]='X';ans[i][j+1]='X';ans[i][j+2]='X';
            }
        }
    }
    for(int j=0;j<s1;j++){
    for(int i=0;i<5;i++){
        cout<<ans[i][j];
    }
    cout<<endl;
}
return 0;
}

发的第二个啦,谁能帮帮我!!!!!!!!!!!!!!


by timmyliao @ 2024-01-29 11:23:49

AC

#include <iostream>
#include <string>
#define AUTHOR "HEX9CF"
using namespace std;

const int N = 1e3 + 5;
const char t[10][5][3] = {{ 'X', 'X', 'X', 'X', '.', 'X', 'X', '.', 'X', 'X', '.', 'X', 'X', 'X', 'X', }, { '.', '.', 'X', '.', '.', 'X', '.', '.', 'X', '.', '.', 'X', '.', '.', 'X', }, { 'X', 'X', 'X', '.', '.', 'X', 'X', 'X', 'X', 'X', '.', '.', 'X', 'X', 'X', }, { 'X', 'X', 'X', '.', '.', 'X', 'X', 'X', 'X', '.', '.', 'X', 'X', 'X', 'X', }, { 'X', '.', 'X', 'X', '.', 'X', 'X', 'X', 'X', '.', '.', 'X', '.', '.', 'X', }, { 'X', 'X', 'X', 'X', '.', '.', 'X', 'X', 'X', '.', '.', 'X', 'X', 'X', 'X', }, { 'X', 'X', 'X', 'X', '.', '.', 'X', 'X', 'X', 'X', '.', 'X', 'X', 'X', 'X', }, { 'X', 'X', 'X', '.', '.', 'X', '.', '.', 'X', '.', '.', 'X', '.', '.', 'X', }, { 'X', 'X', 'X', 'X', '.', 'X', 'X', 'X', 'X', 'X', '.', 'X', 'X', 'X', 'X', }, { 'X', 'X', 'X', 'X', '.', 'X', 'X', 'X', 'X', '.', '.', 'X', 'X', 'X', 'X', }};

int n;
int offset;
string str;
char s[5][N];

void printNum(int x)
{
    for (int i = 0; i < 5; i++)
    {
        for (int j = 0; j < 3; j++)
        {
            s[i][offset + j] = t[x][i][j];
        }
    }
    offset += 3;
}

void printLine()
{
    for (int i = 0; i < 5; i++)
    {
        s[i][offset] = '.';
    }
    offset++;
}

int main()
{
    cin >> n;
    cin >> str;
    offset = 0;
    for (int i = 0; i < n; i++)
    {
        if (i)
        {
            printLine();
        }
        printNum(str[i] - '0');
    }
    // cout << offset << endl;
    for (int i = 0; i < 5; i++)
    {
        for (int j = 0; j <= offset; j++)
        {
            putchar(s[i][j]);
        }
        putchar('\n');
    }
    return 0;
}

by Ghy_boy @ 2024-01-29 15:02:53

@timmyliao 6


by timmyliao @ 2024-01-29 17:48:33

@Ghy_boy 希望能够关注我


by Ghy_boy @ 2024-01-29 19:30:02

@timmyliao OK


by timmyliao @ 2024-01-30 08:24:16

@Ghy_boy 谢谢啦


|