(2018 Multi-University Training Contest 3)Problem L. Visual Cube

//题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6330//题目大意:按照一定格式画出一个 a×b×c 的长方体。 
//解题思路:计算画布大小以及各个关键位置的坐标。按照格式将画布填充正确。逐步覆盖就对了,csy说这是全场最简单的题!虽然我们是第三个做的~ 1 #include <bits/stdc++.h>
 2 using namespace std;
 3 char s[100][100];
 4 int main()
 5 {
 6     int T;
 7     scanf("%d",&T);
 8     while(T--)
 9     {
10         int a,b,c;
11         scanf("%d%d%d",&a,&b,&c);
12         int m=2*b+2*a+1;
13         int n=2*b+2*c+1;
14         for(int i=1;i<=n;i++)
15         {
16             for(int j=1;j<=m;j++)
17             {
18                 if(i%2==1&&j%2==1)
19                 {
20                     s[i][j]=‘+‘;
21                 }
22                 else if(i%2==1&&j%2==0)
23                 {
24                     s[i][j]=‘.‘;
25                 }
26                 else if(i%2==0&&j%2==1)
27                 {
28                     s[i][j]=‘|‘;
29                 }
30                 else
31                 {
32                     s[i][j]=‘/‘;
33                 }
34             }
35         }
36         for(int i=1;i<=2*b;i++)
37         {
38             for(int j=2*b+1-i;j>=1;j--)
39             {
40                 s[i][j]=‘.‘;
41             }
42         }
43         for(int i=n-2*b+1;i<=n;i++)
44         {
45             for(int j=m-2*b+1+(n-i);j<=m;j++)
46             {
47                 s[i][j]=‘.‘;
48             }
49         }
50         for(int i=1;i<=2*b;i++)
51         {
52             for(int j=2*b+3-i;j<=m-i;j+=2)
53             if(i%2==1)
54             s[i][j]=‘-‘;
55             else
56             s[i][j]=‘.‘;
57         }
58         for(int i=2*b+1;i<=n;i++)
59         {
60             for(int j=2;j<=2*a;j+=2)
61             {
62                 if(i%2==1)
63                 s[i][j]=‘-‘;
64                 else
65                 s[i][j]=‘.‘;
66             }
67         }
68         for(int i=1;i<=n;i++)
69         {
70             for(int j=1;j<=m;j++)
71             {
72                 cout<<s[i][j];
73             }
74             cout<<endl;
75         }
76     }
77
78 }

原文地址:https://www.cnblogs.com/lino/p/9392451.html

时间: 2024-10-31 14:21:45

(2018 Multi-University Training Contest 3)Problem L. Visual Cube的相关文章

HDU4888 Redraw Beautiful Drawings(2014 Multi-University Training Contest 3)

Redraw Beautiful Drawings Time Limit: 3000/1500 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Problem Description Alice and Bob are playing together. Alice is crazy about art and she has visited many museums around the world. She has

HDU 4906 Our happy ending(2014 Multi-University Training Contest 4)

题意:构造出n个数 这n个数取值范围0-L,这n个数中存在取一些数之和等于k,则这样称为一种方法.给定n,k,L,求方案数. 思路:装压 每位 第1为表示这种方案能不能构成1(1表示能0表示不能)  第2为表示能不能构成2 ...  这样用d[1<<n] 的DP  像背包那样背 n次就可以 最后状态中第k位为1的就可以加上方法数. #include<cstring> #include<cstdio> #include<cmath> #include <

HDU 4888 Redraw Beautiful Drawings(2014 Multi-University Training Contest 3)

题意:给定n*m个格子,每个格子能填0-k 的整数.然后给出每列之和和每行之和,问有没有解,有的话是不是唯一解,是唯一解输出方案. 思路:网络流,一共 n+m+2个点   源点 到行连流量为 所给的 当前行之和.    每行 连到每一列 一条流量为  k的边,每列到汇点连 列和.如果流量等于总和则有解,反之无解(如果列总和不等于行总和也无解).  判断方案是否唯一 找残留网络是否存在长度大于2的环即可,有环说明不唯一. #include<cstdio> #include<cstring&

UESTC_Rain in ACStar 2015 UESTC Training for Data Structures&lt;Problem L&gt;

L - Rain in ACStar Time Limit: 9000/3000MS (Java/Others)     Memory Limit: 65535/65535KB (Java/Others) Submit Status Maybe you have heard of Super Cow AC who is the great general of ACM Empire. However, do you know where he is from? This is one of th

hdu 6319 Problem A. Ascending Rating (2018 Multi-University Training Contest 3)

1 #include <stdio.h> 2 #include <iostream> 3 #include <cstdlib> 4 #include <cmath> 5 #include <string> 6 #include <cstring> 7 #include <algorithm> 8 #include <stack> 9 #include <queue> 10 #include <

Age of Moyu (2018 Multi-University Training Contest 7)

题目链接 1 #include <bits/stdc++.h> 2 using namespace std; 3 typedef long long ll; 4 inline ll read(){ 5 int x=0,f=1;char ch=getchar(); 6 while(ch>'9'||ch<'0'){if(ch=='-')f=-1;ch=getchar();} 7 while(ch>='0'&&ch<='9'){x=x*10+ch-'0';ch

AV-TEST杀毒软件能力测试(2018年1月-12月)杀毒软件排名

2018年1月到12月,AV-TEST攻击了实验室中无数的Windows系统,在830多项单独测试中测试了7种杀毒软件和5种快捷工具. 1.测试概述 在长期测试中,实验室在各种实际场景中测试了杀毒软件和快速清理工具: 在第一次测试期间,在(单次)攻击后安装保护包并进行了测试,以确定杀毒软件是否可以清除所有病毒文件. 在第二次测试中,安装了一个保护软件并暂时停用.之后,实验室记录了一种恶意软件并进行了处理.最后,重新激活保护软件,此过程验证恶意软件最初未被识别并随后被检测到的情况. 在使用特殊工具

CentOSLinux 学习第三台(2018年6月6日)

安装ifconfig 命令方式yum -y install net-toos运行这个命令就安装了安装完Putty,后,设置Putty秘钥putty 秘钥设置,在安装putty的压缩包里有一个putty证,执行文件(PUTTYGEN),打开后点击:Generate 这个时候就会生出秘钥公钥,这个秘钥是获取随机字符串的,你只要动鼠标就会自动获取字符串做为秘钥 mkdir /root/.ssh 在/root/目录下创建一个.ssh目录chmod 700 /root/.ssh 修改.ssh目录的权限vi

Linux CentOS 学习第4天(2018年6月7日)

一.单用户模式(忘记管理员密码的时候怎么办?)重启命令:rebootinit 6shutdown -r now关机命令init 0poweroff1.重启机器出现以下界面的时候,按键盘上的方向键(上或下键)选择下面的选项CentOS Linux (3.10.0-862.e17.x86_65) 7 (Core)后点击键盘上的字母"e"键,出现以下窗口将红色标注的:ro修改成 rw init=/sysroot/bin/sh修改好之后按键盘上的Ctrl和x键,之后会重启出现以下界面进入这个界