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

题目描述

Etéreo 拿出家里的许多的立方体积木,堆成了一个三维空间中的模型。既然你高考选了技术, 那想必你一定想知道,这个模型的三视图是什么吧! 
图中, 轴、 轴和  轴的方向已经标明。现在规定,图中的红色面为主视面,蓝色面为右视面(注意输出中应为左视而非右视),黄色面为俯视面。具体方向可以观察样例。 

输入描述:

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

输出描述:

输出共 

行,前 

行每行 

个字符,输出正视图及左视图,两幅图之间有一列空格;接下去输出一个空行;再接下去 

行,每行 

个字符,表示俯视图。其中  表示空,  表示有立方体。

输入例子:
2 2 2 2
1 1 1
2 2 2
输出例子:
.x .x
x. x. x.
.x

-->

示例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用法,比较方便
 #include <bits/stdc++.h>
using namespace std;
const int inf=<<;
typedef long long ll;
const double pi=acos(-);
#define mst(a,b) memset(a,b,sizeof(a))
char a[][],b[][],c[][];//分别用来保存主,左,俯视图,二维即可
int X,Y,Z,n,x,y,z;
int main(){
mst(a,'.');
mst(b,'.');
mst(c,'.');
cin>>X>>Y>>Z>>n;
while(n--){
cin>>x>>y>>z;
a[y][x]='x';
b[y][z]='x';
c[z][x]='x';
}
for(int i=Y;i>;i--,puts("")){
for(int j=;j<=X;j++) cout<<a[i][j];
cout<<" ";
for(int j=;j<=Z;j++) cout<<b[i][j];
}
puts("");
for(int i=;i<=Z;i++){
for(int j=;j<=X;j++) cout<<c[i][j];
cout<<endl;
}
return ;
}

牛客小白赛1 F题三视图的更多相关文章

  1. 牛客小白赛4 C题

    乘法逆元: 一个数a 乘上 b,在mod之后再还原成本来的数 a 这里就要用到乘法逆元,(a*b)%mod*inv(b,mod)==a ll exgcd(ll a,ll b,ll &x,ll ...

  2. 牛客网 牛客小白月赛1 F.三视图

    F.三视图   链接:https://www.nowcoder.com/acm/contest/85/F来源:牛客网     这个题自己想一下三维的,正视图和左视图中y轴为行数,x轴和z轴是列数,因为 ...

  3. 牛客小白月赛12 F 华华开始学信息学 (分块+树状数组)

    链接:https://ac.nowcoder.com/acm/contest/392/F来源:牛客网 时间限制:C/C++ 2秒,其他语言4秒 空间限制:C/C++ 32768K,其他语言65536K ...

  4. 牛客小白月赛6 F 发电 树状数组单点更新 求区间乘积 模板

    链接:https://www.nowcoder.com/acm/contest/136/F来源:牛客网  HA实验是一个生产.提炼“神力水晶”的秘密军事基地,神力水晶可以让机器的工作效率成倍提升.   ...

  5. 牛客小白月赛3 F 异或【区间交集】

    链接:https://www.nowcoder.com/acm/contest/87/F 来源:牛客网 题目描述 Cwbc想测试一下他的加密协议,以便防止其他人偷看他给XHRlyb的信. Cwbc提出 ...

  6. 牛客小白月赛6 水题 求n!在m进制下末尾0的个数 数论

    链接:https://www.nowcoder.com/acm/contest/135/C来源:牛客网 题目描述 其中,f(1)=1;f(2)=1;Z皇后的方案数:即在Z×Z的棋盘上放置Z个皇后,使其 ...

  7. 牛客小白赛5 无关(relationship) 容斥原理(计算因子数的模板)

    链接:https://www.nowcoder.com/acm/contest/135/A来源:牛客网 若一个集合A内所有的元素都不是正整数N的因数,则称N与集合A无关.   给出一个含有k个元素的集 ...

  8. 牛客小白月赛16 F 小石的妹子 (线段树)

    链接:https://ac.nowcoder.com/acm/contest/949/F来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言52428 ...

  9. 牛客小白赛4J——强迫症

    链接:https://www.nowcoder.com/acm/contest/134/J 来源:牛客网 思路:把数列排序,把每一个重复的元素和最后一个数想加得到新数,在删掉这一元素即为去重的最少步骤 ...

随机推荐

  1. 关于 RabbitMQ 的 Dead-Letters-Queue “死信队列”

      来自一个队列的消息可以被当做‘死信’,即被重新发布到另外一个“exchange”去,这样的情况有: 消息被拒绝 (basic.reject or basic.nack) 且带 requeue=fa ...

  2. springcloud问题随笔

    http://www.cnblogs.com/EasonJim/p/8085120.html 1.调用其它服务返回could not be queued for execution and no fa ...

  3. ZOJ 3987 Numbers(Java枚举)

    http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3987 题意:给出一个数n,现在要将它分为m个数,这m个数相加起来必须等于n ...

  4. SPOJ 839 Optimal Marks(最小割的应用)

    https://vjudge.net/problem/SPOJ-OPTM 题意: 给出一个无向图G,每个点 v 以一个有界非负整数 lv 作为标号,每条边e=(u,v)的权w定义为该边的两个端点的标号 ...

  5. jquery 获取元素(父节点,子节点,兄弟节点),元素筛选

    一, js 获取元素(父节点,子节点,兄弟节点)   var test = document.getElementById("test"); var parent = test.p ...

  6. python学习 day018打卡 反射

    本节主要内容: 1.isinstance,type,issubclass 2.区分函数和方法 3.反射(重点) 一.isinstance,type,issubclass issubclass():判断 ...

  7. 小程序学习一 .json 文件配置

    微信小程序——配置 以下就是小编对小程序配置的资料进行的系统的整理,希望能对开发者有帮助. 我们使用app.json文件来对微信小程序进行全局配置,决定页面文件的路径.窗口表现.设置网络超时时间.设置 ...

  8. 同上篇 这篇是针对mesh的

    资源加载性能测试代码 与上篇所提出的测试代码一样,我们对于其他资源的加载性能分析同样使用该测试代码.我们将每种资源均制作成一定大小的AssetBundle文件,并逐一通过以下代码在不同设备上进行加载, ...

  9. Event(事件)

    1.ZC:之前一直没怎么用过 OpenEvent(...),这次试用居然老是报错... 弄了一下,貌似是 OpenEvent(...)的第一个参数设置成0了... FhEvent_Communicat ...

  10. C#6.0 语法

    属性表达式 属性值初始化 public string name {get;set;} = "张三"; 函数表达式 NULL检查运算符 var aa = Created?.Date; ...