码迷,mamicode.com
首页 > 其他好文 > 详细

立体图

时间:2018-05-20 10:49:10      阅读:147      评论:0      收藏:0      [点我收藏+]

标签:space   for   max   str   ace   --   int   har   iostream   

#include<iostream>
using namespace std;
int n,m;
char ans[500][500];
int f[60][60];
int cl,kl;
char mod[6][7]={‘.‘,‘.‘,‘+‘,‘-‘,‘-‘,‘-‘,‘+‘,
‘.‘,‘/‘,‘-‘,‘-‘,‘-‘,‘/‘,‘|‘,
‘+‘,‘-‘,‘-‘,‘-‘,‘+‘,‘ ‘,‘|‘,
‘|‘,‘ ‘,‘ ‘,‘ ‘,‘|‘,‘ ‘,‘+‘,
‘|‘,‘ ‘,‘ ‘,‘ ‘,‘|‘,‘/‘,‘.‘,
‘+‘,‘-‘,‘-‘,‘-‘,‘+‘,‘.‘,‘.‘};

int main()
{
//freopen("kll.in","r",stdin);
//freopen("kll.out","w",stdout);
scanf("%d%d",&m,&n);
int maxn=0;
for(int i=1;i<=m;i++)
for(int j=1;j<=n;j++)
scanf("%d",&f[i][j]),kl=max(kl,(m+1-i)*2+3*f[i][j]+1),maxn=max(maxn,f[i][j]);
cl=4*n+1+m*2;
for(int i=1;i<=kl;i++)
for(int j=1;j<=cl;j++)
ans[i][j]=‘ ‘;
for(int k=1;k<=maxn;k++)
{
for(int i=1;i<=m;i++)
for(int j=1;j<=n;j++)
{
if(!f[i][j])continue;
int qx=kl-(2*(m-i+1)+1+3*k)+1;
int qy=2*(m-i)+1+4*(j-1);
for(int c=0;c<=5;c++)
for(int d=0;d<=6;d++)
if(mod[c][d]!=‘.‘)
ans[c+qx][d+qy]=mod[c][d];
f[i][j]--;
}
}
for(int i=1;i<=kl;i++)
{
for(int j=1;j<=cl;j++)
{
cout<<ans[i][j];
for(int l=1;l<=5000000;l++)
int temp=0;
}
cout<<endl;
}
return 0;
}
5 14
1 1 1 1 0 1 1 1 1 0 1 1 1 1
1 0 0 0 0 0 0 0 1 0 1 0 0 1
1 1 1 1 0 1 1 1 1 0 1 0 0 1
0 0 0 1 0 1 0 0 0 0 1 0 0 1
1 1 1 1 0 1 1 1 1 0 1 1 1 1

 

 

 

立体图

标签:space   for   max   str   ace   --   int   har   iostream   

原文地址:https://www.cnblogs.com/kgxw0430/p/9062413.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!