zoukankan      html  css  js  c++  java
  • 牛客小白赛1 F题三视图

    链接:https://www.nowcoder.com/acm/contest/85/F
    来源:牛客网

    题目描述

    Etéreo 拿出家里的许多的立方体积木,堆成了一个三维空间中的模型。既然你高考选了技术, 那想必你一定想知道,这个模型的三视图是什么吧! 

    图中, 轴、 轴和  轴的方向已经标明。现在规定,图中的红色面为主视面,蓝色面为右视面(注意输出中应为左视而非右视),黄色面为俯视面。具体方向可以观察样例。 

    输入描述:

    第一行四个数 ,表示该三维空间大小为 ,且有 个立方体。 接下去 行,每行三个整数 ,表示其位置坐标。

    输出描述:

    输出共 
    行,前 
    行每行 
    个字符,输出正视图及左视图,两幅图之间有一列空格;接下去输出一个空行;再接下去 
    行,每行 
    个字符,表示俯视图。其中  表示空,  表示有立方体。
    示例1

    输入

    复制
    2 2 2 2
    1 1 1
    2 2 2

    输出

    复制
    .x .x
    x. x.
    
    x.
    .x
    示例2

    输入

    复制
    3 3 3 3
    1 1 2
    2 1 1
    1 2 1

    输出

    复制
    ... ...
    x.. x..
    xx. xx.
    
    xx.
    x..
    ...

    说明

    这里可以把图片拉出去放大看哦~

    备注:

    
    
     
    思路分析:一开始傻乎乎的设了个唯一的三维数组,想着覆盖来解,发现很麻烦,跟随大神的脚步意识到直接建3个二维数组分别表示主视图,左视图,俯视图即可,在主视图里就不管z了,任何一个z下的x,y坐标存在都将这一点标记为有立方体,这样做就会非常简单了
    然后可以注意下这个#define用法,比较方便
     1 #include <bits/stdc++.h>
     2 using namespace std;
     3 const int inf=1<<30;
     4 typedef long long ll;
     5 const double pi=acos(-1);
     6 #define mst(a,b) memset(a,b,sizeof(a))
     7 char a[1001][1001],b[1001][1001],c[1001][1001];//分别用来保存主,左,俯视图,二维即可 
     8 int X,Y,Z,n,x,y,z;
     9 int main(){
    10     mst(a,'.');
    11     mst(b,'.');
    12     mst(c,'.');
    13     cin>>X>>Y>>Z>>n;
    14     while(n--){
    15         cin>>x>>y>>z;
    16         a[y][x]='x';
    17         b[y][z]='x';
    18         c[z][x]='x';
    19     }
    20     for(int i=Y;i>0;i--,puts("")){
    21         for(int j=1;j<=X;j++)    cout<<a[i][j];
    22         cout<<" ";
    23         for(int j=1;j<=Z;j++)    cout<<b[i][j];
    24     }
    25     puts("");
    26     for(int i=1;i<=Z;i++){
    27         for(int j=1;j<=X;j++)    cout<<c[i][j];
    28         cout<<endl;
    29     }
    30     return 0;
    31 }
  • 相关阅读:
    OPC UA认识汇总
    linux内核铁三角-进程(任务)调度
    nginx配置文件
    git和coding的使用
    php处理mysql的结果集
    php中self和$this还有parent的区别
    Mysql练习题
    SEO优化
    css3 旋转 八仙桌
    laravel笔记
  • 原文地址:https://www.cnblogs.com/qingjiuling/p/9856214.html
Copyright © 2011-2022 走看看