Questions tagged «ascii-art»

这项挑战涉及使用文本字符作为绘画来创建或解析图片。通常,它仅使用1963年ASCII标准定义的95个可打印字符(总共128个)。

30
创建一个鹦鹉程序
给定输入,输出该输入,然后不断地换行。 输入将是仅由可打印的ASCII字符(0x20-0x7E)和换行符(0x0A)组成的字符串。 如果输入长度为0,则不断输出换行符。 这是代码高尔夫球,因此每种语言中最少的字节会获胜!
15 code-golf  string  sequence  combinatorics  fastest-code  number  code-challenge  restricted-source  rosetta-stone  code-golf  arithmetic  decision-problem  integer  factorial  code-golf  arithmetic  decision-problem  integer  bitwise  code-golf  kolmogorov-complexity  code-golf  tips  vim  code-golf  quine  code-generation  code-golf  string  restricted-source  code-golf  string  random  unicode  code-golf  audio  code-golf  ascii-art  code-golf  decision-problem  code-golf  puzzle-solver  code-golf  restricted-source  code-golf  kolmogorov-complexity  permutations  hexagonal-grid  code-golf  string  math  combinatorics  fastest-code  code-golf  restricted-source  code-golf  string  code-golf  arithmetic  code-golf  math  number  code-golf  string  decision-problem  balanced-string  code-golf  binary  code-golf  string  number  code-challenge  restricted-source  code-golf  ascii-art  printable-ascii  interactive  code-golf  string  ascii-art  code-challenge  restricted-source  source-layout  code-golf  arithmetic  tips  functional-programming  golfing-language  code-golf  binary  encryption 

2
画一条直线
绘制包含直线的简单ASCII艺术图像。它类似于这个和这个,但不同的规格。 输入值 您可以修改此输入格式以适合您的代码。 整数 width 整数 height 整数 x0 整数 y0 整数 x1 整数 y1 输出量 填充的ASCII艺术图像,具有指定的宽度和高度,其中包含一条从像素(x0, y0)到像素的线(x1, y1)。 任何标准形式的文本输出都是可以接受的,但不要使用内置的线条绘制功能。 细节 该线条必须使用单个可打印字符(例如#)绘制,而背景则用不同的字符(例如.)填充。您必须打印必要的结尾字符,以便图像尺寸正确。 像素坐标可以是0索引或1索引,并且可以从图像的任何角落开始。应通过想象一条连接起始像素和终止像素中心的0宽度子像素线来绘制该线。该行输入的每个像素均应填写。 获奖 通常的代码高尔夫球规则。最短的代码获胜。 例子 IN: width, height, x0, y0, x1, y1 IN: 7, 6, 0, 0, 6, 5 OUT: .....## ....##. ...##.. ..##... .##.... ##..... IN: 3, 3, …

12
二元分支
给定一个二进制数字,您的任务是创建一个深度为2的该数字的“分支”。 例如,0作为输入,您应该完全输出以下内容: /000 /00 / \001 0 \ /010 \01 \011 这应该是分支机构如何创建的完全自我解释。深度2表示我们计算最多2个数字的分支。我们还按顺序计算分支,顶部为零,底部为零。 更多测试用例: 0 /000 /00 / \001 0 \ /010 \01 \011 1 /100 /10 / \101 1 \ /110 \11 \111 00 /0000 /000 / \0001 00 \ /0010 \001 \0011 01 /0100 /010 / \0101 01 \ …

7
给我编织一个ASCII袜子
介绍 长话短说:几天前,我不小心开始编织袜子,平针的漂亮逻辑结构使我想到:我们为什么不只用ASCII编织袜子? 输入值 输入在该范围内整数N,偶数[2,30]。 输出量 显然,输出是袜子。 结构体 由于我们将仅使用平针,因此仅v用于向下针和>向右针。让我用以下示例说明完整结构N=8: vvvvvvvv vvvvvvvv vvvvvvvv vvvvvvvv vvvvvvvv vvvvvvvv vvvvvvvv vvvvvvvv vvvvvvvv vvvvvvvv vvvvvvvv vvvvvvvv vvvvvvv>>> vvvvvv>>>>>> vvvvv>>>>>>>>> vvvv>>>>>>>>>>>> vvvv>>>>>>>>>>>>>>>>>>>>>>>> vvvv>>>>>>>>>>>>>>>>>>>>>>>>>> vvvv>>>>>>>>>>>>>>>>>>>>>>>>>> vvvv>>>>>>>>>>>>>>>>>>>>>>>> 第一块是上部。它具有宽度N和高度N*1.5 之后,脚跟开始。您v从右侧每行减去一个,直到N/2宽度等于。然后添加下面N/2宽度的行N/2以完成向下编织。请注意,它给出的N/2 + 1行的总宽度为N/2 第一部分: vvvvvvvv //begin with width N vvvvvvvv vvvvvvvv vvvvvvvv vvvvvvvv vvvvvvvv vvvvvvvv vvvvvvvv vvvvvvvv vvvvvvvv vvvvvvvv vvvvvvvv // …

2
验证我的千层面
情境 我经常煮烤宽面条,但我也有一些错误。由于我经常重复这些错误,所以我认为我可以做一个检查我是否做对的程序。 有效千层面 有效的千层面是 至少5列宽 至少4层高 不包括多余的奶酪 顶层是奶酪(以表示,) 第二层是酱料(用@或表示#) 之后,各层交替显示(1层酱汁,1层面条(由~或表示-)) 每列可以有一层或两层奶酪 该程序 应该 以烤宽面条串作为输入 多行字符串 字符串数组 字符串仅包含字符 ,@#~- 长方形 必要时用空格填充 输出是否是有效的千层面 任何有效的语言 没什么用你的语言造假 要么 完整程序 一个功能 仅使用2016年12月14日之前实现的功能 测试用例 ,, , ,,,,,, @@@### ~~~~~- @##@@# --> truthy @@@# ---- @@## ---- @### --> falsy (cause of cheese and width (You don't …

6
桥梁是ASCII艺术中所有事物的隐喻
(向标题的Jim West致歉,并从Cisco徽标的文字表示中随机得到启发: .:|:.:|:. 用于该概念) 给定输入整数1 <= n <= 255,n按照以下构造规则输出距离的悬索桥的ASCII艺术表示: 桥梁的起点和终点(不计入n距离)始终为-|和|-,因此桥梁可以适当地连接至其旁边的高速公路。 桥梁不向下延伸(由-行组成的行车道高度是最底行)。 --连续最多可有两个巷道部件,任何更长的跨度都需要悬挂电缆来支撑。 悬索\从车道一直延伸到塔架|,呈直线状。 塔架|必须足够高以支撑相邻的悬挂电缆,但不能更高。 桥梁必须围绕中点左右平衡,并尽可能偏向中心部分。 上面所有这些都将导致电缆的最小化,但是需要明确的是,在遵循上述规则的同时,必须使悬挂电缆的数量最少。 为了提供可视化表示,以下是-的预期输出n = 1, 2, 3, ... 15: 1 -|-|- 2 -|--|- 3 -|\-/|- 4 -|\--/|- 5 |\ /| -|-\-/-|- 6 |\ /| -|-\--/-|- 7 |\ /| | \ / | -|--\-/--|- 8 |\ /| …

2
鬼和南瓜
这是刻在Jack-o-Lantern中的ASCII南瓜。可爱吗? ((^v^)) 这是一个ASCII伪影。看起来有多怪异! \{O.O}/ 显然,南瓜必须在地面上,并且它们之间要有一定的间距,以免它们腐烂。 但是,鬼魂喜欢站在南瓜上,因此它们甚至更怪异。但是,他们必须站在两个南瓜上,否则它们的幽灵般的重量会压碎下面的南瓜。但是,由于它们的幽灵魔术如何工作,多个幽灵可以堆叠和共享南瓜,只要这些幽灵在较低的南瓜或较低的幽灵上平均分配即可。换句话说,形成一个像人类金字塔的形状。请注意,除非在下面有南瓜(否则这是魔术的工作原理),否则鬼魂无法堆叠在鬼魂上。 给定两个非负整数,g并且分别p表示g主体和pumpkins 的数量,它们按照上述金字塔堆积规则输出最紧凑的最左形式。剩下的南瓜和鬼魂(即那些没有形成金字塔的鬼魂)在地上向右走。 为了澄清起见,这些形式是可以的(用空白换行符分隔),并用作示例I / O: 0p 1g \{O.O}/ 1p 0g ((^v^)) 1p 1g ((^v^)) \{O.O}/ 2p 1g \{O.O}/ ((^v^)) ((^v^)) 2p 2g \{O.O}/ ((^v^)) ((^v^)) \{O.O}/ 3p 1g \{O.O}/ ((^v^)) ((^v^)) ((^v^)) 3p 2g \{O.O}/ \{O.O}/ ((^v^)) ((^v^)) ((^v^)) 3p 3g \{O.O}/ \{O.O}/ \{O.O}/ …

4
HexaGolf:Rotagons
另请参阅:字形 挑战 给定一个六角形和一个数字n作为输入,输出相同的六角形旋转n时间。 六边形 六角形将是这样的字符串: a b c d d e e f f o g g h h i i j k l 六边形将始终是规则的,并且将仅包含可打印的ASCII字符: !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ 回转 要找到旋转六边形n的角度,请乘以60度以获得旋转角度。例如,使用上述六边形,如果n为2 ,则将其乘以60得到120度。然后,将六角形旋转120度: j h f k h f d l i o d a i g e b g e c 请注意,每一侧都顺时针移动了两侧。 如果n为正,则应顺时针旋转六角形。如果n为负,则应逆时针旋转六角形。 …

12
Eratosthenes筛,一步一步
给定数字N,绘制一个左对齐的N x N数字板,留出1个空白(作为空格)(我将显示N = 5的图) 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 您的工作是逐步构建Eratosthenes筛。首先,从2开始。它是质数,因此将其保留在那里,并用适当的空格数替换所有其他可被2整除的数字。 2 3 5 7 9 11 13 15 17 19 21 23 25 接下来,转到下一个未打印的号码(3在这种情况下),然后执行相同的操作。 2 3 5 7 11 13 …

10
可见建筑物
此难题源自CodinGame SamSi的“城市之心”难题。 描述 您决定在n* n瓷砖城市中散步并转到中心瓷砖。所有建筑物都无限小,但是您拥有超强的视野,可以看到一切近在咫尺。 约束条件 n 总是很奇怪 您可以看到没有被其他建筑物直接遮挡的任何建筑物 任务 用标记每个可见的建筑物*。该建筑物是可见的,前提是它没有被完全相同的视线内的另一栋建筑物所阻挡。 换句话说,如果@是原点,则建筑物是可见的,前提是x坐标和y坐标互为质数。 输入和输出示例 输入: 7 输出: ** ** * * * * ******* *@* ******* * * * * ** ** *是一栋可见的建筑物, 是一栋无形的建筑物, @就是您所在的位置。 计分 请记住,这是code-golf,所以以字节数最少的答案为准。 var QUESTION_ID=91394,OVERRIDE_USER=59057;function answersUrl(e){return"https://api.stackexchange.com/2.2/questions/"+QUESTION_ID+"/answers?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+ANSWER_FILTER}function commentUrl(e,s){return"https://api.stackexchange.com/2.2/answers/"+s.join(";")+"/comments?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+COMMENT_FILTER}function getAnswers(){jQuery.ajax({url:answersUrl(answer_page++),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){answers.push.apply(answers,e.items),answers_hash=[],answer_ids=[],e.items.forEach(function(e){e.comments=[];var s=+e.share_link.match(/\d+/);answer_ids.push(s),answers_hash[s]=e}),e.has_more||(more_answers=!1),comment_page=1,getComments()}})}function getComments(){jQuery.ajax({url:commentUrl(comment_page++,answer_ids),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){e.items.forEach(function(e){e.owner.user_id===OVERRIDE_USER&&answers_hash[e.post_id].comments.push(e)}),e.has_more?getComments():more_answers?getAnswers():process()}})}function getAuthorName(e){return e.owner.display_name}function process(){var e=[];answers.forEach(function(s){var r=s.body;s.comments.forEach(function(e){OVERRIDE_REG.test(e.body)&&(r="<h1>"+e.body.replace(OVERRIDE_REG,"")+"</h1>")});var a=r.match(SCORE_REG);a&&e.push({user:getAuthorName(s),size:+a[2],language:a[1],link:s.share_link})}),e.sort(function(e,s){var r=e.size,a=s.size;return …

5
片三角形字母
给定一个n从1to 26(或0to 25)的输入数字,用来输出从左到右的字母,直到并包括相应的字母a=1, b=2, c=3, ...。扭曲之处在于,字母还必须垂直于字母在字母表中的位置重复。奇数(在1索引时)应在水平线上保持平衡,而偶数应在偏向顶部或底部之间交替(您可以选择先选择哪个方向)。如果您的索引是0,请在前一句中将奇/偶数互换。 换句话说,如果字母的字母值?是#,则#输出中应该有该字母的副本,所有副本均在第#th列中。这些字母应在具有的水平线的上方和下方平均平衡a。如果字母不能均匀平衡,则交替在该行的上方和下方具有“额外”字母。 这是前六个输出(n = 1,2,3,4,5,6,以1为索引,选择与底部的第一者交替显示),以换行符分隔,因此您可以看到模式。解释模式的注释以开头#。 a # On a line by itself ab b # The "extra" letter is below the horizontal c abc # The 'c' splits evenly bc d # Because the 'b' was below, the extra 'd' must be above cd abcd …

5
可视化差异金字塔
差异金字塔是一个金字塔,其中每个新对角线是最后一个对角线元素之间的差异的绝对值。例如,如果我们从数组开始 2 5 4 9 3 4 现在,我们将它们排列在对角线列中: 2 5 4 9 3 4 现在,我们填写下一个对角线。此数组的连续元素之间的绝对差异为: 3 1 5 6 1 这就是我们的下一个对角线。 2 3 5 1 4 5 9 6 3 1 4 重复直到金字塔被填满: 2 3 5 2 1 4 2 4 5 9 1 3 1 6 3 0 1 …

5
自动房屋建筑商
自动房屋建筑纳米机器人已经制造出来,编写它们是您的工作。 这是通过输入创建的房子 7 4 2 /-----/| / / | |-----| | | | | | | / |_____|/ 输入是包含房屋尺寸的字符串。 7 是宽度。 |_____| ---7--- 4 是高度。 | | | | 2 是深度 / / 有了这个输入,您可以建造房屋吗? 您的代码必须尽可能小,以使其适合机器人。 笔记 您将输入的最小尺寸为3 2 2。您的程序可以执行尺寸小于3 2 2。 测试用例 3 2 10 /-/| / / | / …

5
编码代码页
介绍 代码页将整数值映射到特定字符。我们可以像这样可视化代码页: + --- + --- + --- + --- + --- + --- + --- + --- + --- + --- + --- +- -+ --- + --- + --- +- | | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | …

4
用ASCII艺术建造一个简单的房间
一个房间可以由相连的矩形组成,例如L形房间。这样的房间可以通过描述每个矩形尺寸的尺寸列表来描述。 假设您有两个输入列表。第一个包含彼此垂直垂直堆叠的矩形的宽度。第二个包含矩形的高度。 例如,输入[4 6][3 2]将是6 x 2矩形顶部的4 x 3矩形。下图显示了此形状。请注意,墙壁被认为是“薄”的,因此,墙壁之间的空间取决于输入。 [4 6][3 2] ____ | | | | | |_ | | |______| 面临的挑战是:将尺寸列表作为输入,并以ASCII艺术形式输出房间的形状。格式必须与示例图中的一样: 所有水平墙均使用下划线显示 所有垂直墙均使用条形图显示 矩形连接处不得有墙 左墙是直的 有关更多详细信息,请查看测试用例 您可以做出的假设: 所有尺寸均在范围内 [1 ... 20] 所有的卧式尺寸为偶数 矩形数将在范围内 [1 ... 10] 仅给出有效输入 可选的输入格式(您可以确定输入尺寸的顺序,请在答案中指定)。 测试用例: [2][1] __ |__| --- [4][2] ____ | | |____| …

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.