Gym - 101670E Forest Picture (CTU Open Contest 2017 模拟)
题目:
https://cn.vjudge.net/problem/1451310/origin
题意&思路:
纯粹模拟。
大体题意是这样的:
1、有人要在一个10-9<=x<=109,10-9<=y<=109,这么大的一张纸上去画图,而我们只需要打印输出最大为0<=x<=100,0<=y<=100范围内的图案就ok了。
2、如果s==0的话就在给出的坐标处画一个“_o_”( ASCII codes 95, 111, 95)的图案,表示a tree stump。
3、如果s>0的话,就在给出的坐标处画一个高度为s的a standing tree,这个standing tree 首先有一个root图案为:“_|_”,(ASCII codes 95, 124, 95),然后有s个“|”表示树干,最后在最高的树干上边的一个单元格中画一个“^” ASCII code 94)。
4、另一个需要注意的地方是,题目中的坐标表示为左下角为(0,0),右上角是(m-1,m-1),需要做一下下标的变换对应到数组中。
代码:
#include <bits/stdc++.h>
#define inf 0x3f3f3f3f
using namespace std;
typedef long long ll;
const int maxn = ;
int mp[maxn][maxn];
int n,m; void Dn(int x,int y,int id){
if(x>= && x<m && y>= && y<m){//必须是在要输出的范围内才能画上图案
mp[x][y] = id;
}
return;
} void print(){
for(int i = ; i<m+; i++){
printf("*");
}
printf("\n");
for(int i = ; i<m; i++){
for(int j = ; j<m; j++){
if(j==)printf("*");
printf("%c",mp[i][j]);
if(j==m-)
printf("*\n");
}
}
for(int i = ; i<m+; i++){
printf("*");
}
printf("\n\n");
} int main(){
while(scanf("%d%d",&m,&n)!=EOF){
for(int i = ; i<m; i++){
for(int j = ; j<m; j++){
mp[i][j] = ;
}
}
int x,y,s;
for(int kk = ; kk<n; kk++){
scanf("%d%d%d",&s,&y,&x);//注意行和列的输入位置
x = m-x-;//由题意的坐标变换到数组中的下标中
if(s==){
Dn(x,y,);//打印'o'
Dn(x,y-,);//打印'_'
Dn(x,y+,);//打印'_'
}
else if(s>){
Dn(x,y,);//打印'|'
Dn(x,y-,);//打印'_'
Dn(x,y+,);//打印'_'
for(int i=; i<=s; i++){
Dn(x-i,y,);//打印'|'
Dn(x-i,y-,);//打印'/'
Dn(x-i,y+,);//打印'\'
}
Dn(x-s-,y,);//打印'^'
}
}
print();
}
return ;
}
Gym - 101670E Forest Picture (CTU Open Contest 2017 模拟)的更多相关文章
- Gym - 101670H Go Northwest!(CTU Open Contest 2017 思维题+map)
题目: Go Northwest! is a game usually played in the park main hall when occasional rainy weather disco ...
- Gym - 101670A Amusement Anticipation(CTU Open Contest 2017 签到题)
题目&题意: 倒着找处于最后位置的等差数列的开头的位置. 例: 1 5 3 4 5 6 3 4 5 6是等差数列,它的开头的位置是3 PS: 读题真的很重要!!!!多组输入,上来就读错了!! ...
- Gym - 101670F Shooting Gallery(CTU Open Contest 2017 区间dp)
题目&题意:(有点难读...) 给出一个数字序列,找出一个区间,当删除这个区间中的两个相同的数字后,只保留这两个数字之间的序列,然后继续删除相同的数字,问最多可以实行多少次删除操作. 例如: ...
- Gym - 101670G Ice cream samples(CTU Open Contest 2017 尺取法)
题目: To encourage visitors active movement among the attractions, a circular path with ice cream stan ...
- Gym - 101670H Dark Ride with Monsters(CTU Open Contest 2017 贪心)
题目: A narrow gauge train drives the visitors through the sequence of chambers in the Dark Ride attra ...
- Gym - 101670C Chessboard Dancing(CTU Open Contest 2017 找规律)
题目:链接 思路: 多画出几个情况就可以找出规律来了 Knight (当大于2的时候只要两种颜色相间出现就可以了) King(当大于等于3的时候,总可以用四种形式来补色,具体如下) Bishop(斜 ...
- Gym - 101670B Pond Cascade(CTU Open Contest 2017 贪心,二分)
题目: The cascade of water slides has been installed in the park recently and it has to be tested. The ...
- Gym - 101670J Punching Power(CTU Open Contest 2017 最大独立集)
题目: The park management finally decided to install some popular boxing machines at various strategic ...
- CTU Open Contest 2017
这场题很水.水题我就懒得贴了. B - Pond Cascade 优先队列维护这个水池需要多少时间 或者 直接扫一遍. #include <cstdio> #include <cst ...
随机推荐
- 【Codevs1080】质数环
http://codevs.cn/problem/1031/ 不讲什么,预处理素数+搜索 // <C.cpp> - Sun Oct 9 12:58:23 2016 // This file ...
- maven仓库管理
maven仓库管理很重要,如果是依赖jar下不到或下错了或出现莫名的报错.曾几何时为此花费了不少时间. 首先,注意自己maven仓库配置,里面有本地仓库目录和远程maven仓库,当自己本地没有依赖时可 ...
- POJ3528 HDU3662 三维凸包模板
POJ3528 HDU3662 第一道题 给定若干点 求凸包的表面积,第二题 给定若干点就凸包的面数. 简单说一下三维凸包的求法,首先对于4个点假设不共面,确定了唯一四面体,对于一个新的点,若它不在四 ...
- Java集合类解析 ***
collection集合 Map集合 Hashtable和HashMap的区别: Hashtable的方法是同步的,而HashMap的方法不是.HashMap可以将空值作为一个表的条目的key或val ...
- bzoj1778
高斯消元+矩阵的逆 来自popoqqq大神 求矩阵的逆:把I-T放在左边,P/Q*S放在右边,这样就形成了一个n*2n的矩阵,然后把左边高斯消元,右边就是求完逆的矩阵,其实就是ans,矩阵的逆跟乘法逆 ...
- openstack dnsmasq彭祖
Openstack dnsmasq配置域名解析,openstackdnsmasq vi /etc/nova/nova.conf 在[DEFAULT]添加 dnsmasq_config_file=/et ...
- C#面向过程项目之飞行棋
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace 飞行棋V ...
- Rails5 Model Document
创建: 2017/06/09 更新: 2017/06/21 更新: 2017/06/23 对待未完成的追加# TODO: 更新: 2017/06/29 修正文件名db/seed.rb ---> ...
- OpenGL 2D模式
// // left top 这里设置的默认是左上角 // void push_view2d(int left, int top, int width, int height) { //glPushA ...
- 基于ASP.Net Core开发一套通用后台框架记录-(总述)
写在前面 本系列博客是本人在学习的过程中搭建学习的记录,如果对你有所帮助那再好不过.如果您有发现错误,请告知我,我会第一时间修改. 前期我不会公开源码,我想是一点点敲代码,不然复制.粘贴那就没意思了. ...