[luoguP1058] 立体图(超级大模拟(¬︿̫̿¬☆))
看到题后整个人成了mengbier
但是仔细分析一下就很简单了,先确定好输出的图的长和宽。
然后从输入的矩形的左上角的最下面的开始填充,顺序是从下到上,从左到右,从后往前。
填充的时候直接覆盖掉原先的就可以。
代码
#include <cstdio>
#include <iostream>
#define min(x, y) ((x) < (y) ? (x) : (y))
#define max(x, y) ((x) > (y) ? (x) : (y)) int n, m, N, M;
int a[51][51];
char map[1001][1001]; inline int read()
{
int x = 0, f = 1;
char ch = getchar();
for(; !isdigit(ch); ch = getchar()) if(ch == '-') f = -1;
for(; isdigit(ch); ch = getchar()) x = (x << 1) + (x << 3) + ch - '0';
return x * f;
} inline void print(int i, int j, int k)
{
int x, y;
x = (n - i) * 2 + (k - 1) * 3 + 1;
y = (n - i) * 2 + (j - 1) * 4 + 1; map[x + 4][y + 1] = '/';
map[x + 4][y + 5] = '/';
map[x + 1][y + 5] = '/'; map[x][y] = '+';
map[x + 3][y] = '+';
map[x][y + 4] = '+';
map[x + 3][y + 4] = '+';
map[x + 5][y + 2] = '+';
map[x + 5][y + 6] = '+';
map[x + 2][y + 6] = '+'; for(i = y + 3; i <= y + 5; i++) map[x + 5][i] = '-';
for(i = y + 1; i <= y + 3; i++) map[x][i] = '-', map[x + 3][i] = '-'; for(i = x + 3; i <= x + 4; i++) map[i][y + 6] = '|';
for(i = x + 1; i <= x + 2; i++) map[i][y] = '|', map[i][y + 4] = '|'; for(i = x + 1; i <= x + 2; i++)
for(j = y + 1; j <= y + 3; j++)
map[i][j] = ' ';
for(i = y + 2; i <= y + 4; i++) map[x + 4][i] = ' ';
for(i = x + 2; i <= x + 3; i++) map[i][y + 5] = ' ';
} int main()
{
int i, j, k;
n = read();
m = read();
for(i = 1; i <= n; i++)
for(j = 1; j <= m; j++)
{
a[i][j] = read();
N = max(N, (n - i) * 2 + a[i][j] * 3 + 3);
}
M = 4 * m + 2 * n + 1;
for(i = 1; i <= N; i++)
for(j = 1; j <= M; j++)
map[i][j] = '.';
for(i = 1; i <= n; i++)
for(j = 1; j <= m; j++)
for(k = 1; k <= a[i][j]; k++)
print(i, j, k);
for(i = N; i >= 1; puts(""), i--)
for(j = 1; j <= M; j++)
putchar(map[i][j]);
return 0;
}
[luoguP1058] 立体图(超级大模拟(¬︿̫̿¬☆))的更多相关文章
- js 模拟超级大LE透中头奖 统计中头奖需要购买的彩票次数以及购买总金额
<!DOCTYPE html> <html> <head> <title>超级大LE透模拟</title> </head> &l ...
- HDU 5920 Ugly Problem 高精度减法大模拟 ---2016CCPC长春区域现场赛
题目链接 题意:给定一个很大的数,把他们分为数个回文数的和,分的个数不超过50个,输出个数并输出每个数,special judge. 题解:现场赛的时候很快想出来了思路,把这个数从中间分为两部分,当位 ...
- APU平台DirectX 12性能测试:超级大惊喜!
APU平台DirectX 12性能测试:超级大惊喜! 转自:http://www.ithome.com/html/digi/129840.htm [size=1pc]微软将会在接下来的GDC 2015 ...
- AC日记——神奇的幻方 洛谷 P2615(大模拟)
题目描述 幻方是一种很神奇的N*N矩阵:它由数字1,2,3,……,N*N构成,且每行.每列及两条对角线上的数字之和都相同. 当N为奇数时,我们可以通过以下方法构建一个幻方: 首先将1写在第一行的中间. ...
- ACdream 1188 Read Phone Number (字符串大模拟)
Read Phone Number Time Limit:1000MS Memory Limit:64000KB 64bit IO Format:%lld & %llu Sub ...
- 2016ACM-ICPC网络赛北京赛区 1001 (trie树牌大模拟)
[题目传送门] 1383 : The Book List 时间限制:1000ms 单点时限:1000ms 内存限制:256MB 描述 The history of Peking University ...
- 20亿与20亿表关联优化方法(超级大表与超级大表join优化方法)
记得5年前遇到一个SQL.就是一个简单的两表关联.SQL跑了几乎相同一天一夜,这两个表都非常巨大.每一个表都有几十个G.数据量每一个表有20多亿,表的字段也特别多. 相信大家也知道SQL慢在哪里了,单 ...
- Bzoj1972: [Sdoi2010]猪国杀 题解(大模拟+耐心+细心)
猪国杀 - 可读版本 https://mubu.com/doc/2707815814591da4 题目可真长,读题都要一个小时. 这道题很多人都说不可做,耗时间,代码量大,于是,本着不做死就不会死的精 ...
- (大模拟紫题) Luogu P1953 易语言
原题链接:P1953 易语言 (我最近怎么总在做大模拟大搜索题) 分别处理两种情况. 如果只有一个1或0 直接设一个cnt为这个值,每次输入一个新名字之后把数字替换成cnt,最后cnt++即可. 注意 ...
随机推荐
- gcc 编译 c++ 程序(转载)
单个源文件生成可执行程序 下面是一个保存在文件 helloworld.cpp 中一个简单的 C++ 程序的代码: /* helloworld.cpp */ #include <iostream& ...
- 1270 数组的最大代价 dp
http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1270&judgeId=194704 一开始贪心,以为就两种情况, ...
- UWP Windows10开发更新磁贴和动态更新磁贴
下面将介绍两种方式如何在windows10 uwp开发中如何更新应用磁贴: 实际上windows的磁贴就是用xml实现的,你只需要创建相应格式的xml就可以实现动态磁贴了 一,手动更新磁贴 二,轮询更 ...
- 自学 iOS - 三十天三十个 Swift 项目 第三天
做了这个小demo 之后 感觉OC 和swift 还是有很大的差别的 自己还是要去多看些swift的语法 用的不是很熟练 1.这个demo 的资源文件 我都是用原工程的 2.同样的自定义cell 的 ...
- absolute元素水平居中
原始(未居中): .con{ width:200px; height:200px; background:#ccc; position:relative; } .abs{ width:40px; he ...
- Fresco 源码分析(序)
1. 为什么要写这个分析的博客 其实关于Fresco的相关内容,大家上网搜索,一般可以找到一大推,但是为什么我还要写关于这个的呢,因为在网上搜索中文和英文的关于fresco的相关知识时,大家只是潜在的 ...
- VC++模拟一次鼠标点击返回原位置
HWND h; RECT r1; POINT p;//x,y void ONCE() { h=::FindWindow(NULL,"biaoti"); ::GetWindowRec ...
- iis 配置文件解决跨域问题
<system.webServer> <httpProtocol> <customHeaders> <add name="Access-Contro ...
- badblocks - 查询设备的坏区块
语法(SYNPSIS) badblocks [ -svwnf ] [ -b block-size ] [ -c blocks_at_once ] [ -i input_file ] [ -o outp ...
- zabbix监控tcp连接并发数
第一步,想在zabbix的web监控tcp连接数,那么要看zabbix-server的版本和zabbix-agent版本是否一致,不然TCP-status图没有数据 也会报错.下图就是版本不符合报错的 ...