有个学霸找我这个脑残要这道题的无脑代码——立体图

#include<iostream>
#include<cstring>
#include<cstdio>
using namespace std;
int v[52][52];
char s[2001][2001];
int n,m,x,y;
void wri(int a,int b)
{
    s[a][b]='+';
    s[a+1][b]='-';
    s[a+2][b]='-';
    s[a+3][b]='-';
    s[a+4][b]='+';
    s[a][b-1]='|';
    s[a+1][b-1]=' ';
    s[a+2][b-1]=' ';
    s[a+3][b-1]=' ';
    s[a+4][b-1]='|';
    s[a+5][b-1]='/';
    s[a][b-2]='|';
    s[a+1][b-2]=' ';
    s[a+2][b-2]=' ';
    s[a+3][b-2]=' ';
    s[a+4][b-2]='|';
    s[a+5][b-2]=' ';
    s[a+6][b-2]='+';
    s[a][b-3]='+';
    s[a+1][b-3]='-';
    s[a+2][b-3]='-';
    s[a+3][b-3]='-';
    s[a+4][b-3]='+';
    s[a+5][b-3]=' ';
    s[a+6][b-3]='|';
    s[a+1][b-4]='/';
    s[a+2][b-4]=' ';
    s[a+3][b-4]=' ';
    s[a+4][b-4]=' ';
    s[a+5][b-4]='/';
    s[a+6][b-4]='|';
    s[a+2][b-5]='+';
    s[a+3][b-5]='-';
    s[a+4][b-5]='-';
    s[a+5][b-5]='-';
    s[a+6][b-5]='+';
};
int main()
{
    cin>>m>>n;
    for (int i=1;i<=2000;i++)
        for (int j=1;j<=2000;j++)
            s[i][j]='.';
    for (int i=1;i<=m;i++)
        for (int j=1;j<=n;j++)
            cin>>v[i][j];
    for (int i=1;i<=m;i++)
        for (int j=1;j<=n;j++)
        {
            x=1+2*(m-i)+4*j-4;
            y=2000-2*(m-i);
            for (int k=1;k<=v[i][j];k++)
            {
                wri(x,y-3*(k-1));
            };
        };
    bool z;
    z=false;
    for (int i=1;i<=2000;i++)
    {
        for (int j=1;j<=2000;j++)
            if (s[j][i]!='.')
            {
                z=true;
                y=i;
                break;
            };
        if (z==true) break;
    };
    z=false;
    for (int j=2000;j>=1;j--)
    {
        for (int i=2000;i>=1;i--)
            if (s[j][i]!='.')
            {
                z=true;
                x=j;
                break;
            };
        if (z==true) break;
    };
    for (int i=y;i<=2000;i++)
    {
        for (int j=1;j<=x;j++)
            cout<<s[j][i];
        cout<<endl;
    };
    return 0;
};
原文地址:https://www.cnblogs.com/201312lyx/p/3809887.html