Questions tagged «ascii-art»

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

10
斐波那契多米诺骨牌
有经典的组合的结果,一个办法瓦数2*n由带1*2多米诺骨牌是第n 个 Fibonacci数。您的目标是打印给定的所有拼贴n,并用虚线和垂直线绘制,例如以下8个拼贴n=5: |———— |———— ——|—— ——|—— |||—— |||—— ————| ————| ||——| ||——| |——|| |——|| ——||| ——||| ||||| ||||| 您将提供一个程序或命名函数n作为输入并打印所需的输出。最少的字节数获胜。 输入值 通过STDIN或功能输入n之间的数字1(10含)。 输出量 打印2*n水平绘制的每个可能的多米诺骨牌瓷砖。平铺可以以任何顺序进行,但每个平铺应恰好出现一次。它们必须用空白行分隔。 垂直多米诺骨牌由两个垂直条(|)组成,水平多米诺骨牌由两个破折号(—)组成。您可以使用连字符(-)代替破折号以保持ASCII。 只要打印输出看起来相同,您就可以对空格进行任何操作。

2
X大于3,且X和Y之间至少相差2
我试图打败一些C ++。是否可以使这种情况更短? X > 3 & X - Y > 1 (当然,除了删除空白。) 所以,X至少4,但X >= Y + 2。 X和Y是[0,5]间隔中的整数。 我试图找到一些按位公式,但失败了。
11 code-golf  number  tips  c++  code-golf  popularity-contest  obfuscation  code-golf  c  code-golf  board-game  hexagonal-grid  code-golf  game  grid  code-golf  number  permutations  popularity-contest  math  graphical-output  number-theory  king-of-the-hill  code-challenge  compression  code-challenge  fastest-code  code-golf  math  ascii-art  animation  code-golf  popularity-contest  generation  counting  fastest-code  fastest-code  popularity-contest  image-processing  king-of-the-hill  code-golf  conversion  binary-tree  code-golf  math  number  rational-numbers  division  code-golf  restricted-source  hashing  atomic-code-golf  logic-gates  code-golf  function  code-challenge  puzzle-solver  ai-player  test-battery  popularity-contest  music  compression  code-golf  number  stack  atomic-code-golf  logic-gates  ascii-art  popularity-contest  code-golf  date  grid  code-challenge  game  code-golf  parsing  code-golf  math  geometry  sequence  popularity-contest  code-trolling  code-golf  string  restricted-source  code-golf  quine  king-of-the-hill  code-golf  math  code-golf  simulation  code-golf  ascii-art  code-challenge  sorting  optimization 

16
盒子动画中的ASCII球
编写一个程序,*在矩形内显示一个移动的ASCII球(20 x 10个字符,包括边框)。球一定不能越过矩形,例如,碰到墙时会掉落。必须每隔0.1秒钟清除并重新绘制场景,并且每帧球必须在x和y方向上移动1个字符。以任何一种语言编写的最短程序都将获胜。 输出示例(帧1) +------------------+ |* | | | | | | | | | | | | | | | +------------------+ 输出示例(第2帧) +------------------+ | | | * | | | | | | | | | | | | | +------------------+ 输出示例(第8帧) +------------------+ | | | | | | …

8
ASCII标尺生成
挑战在于生成以下格式的ASCII字符计数标尺: +-------------------------------------------------------------------------+ || | | | | | | | | | | | | | | | |0 10 20 30 40 50 60 70 | | | +-------------------------------------------------------------------------+ 标尺的长度应可扩展为10的任意倍数。 规则: 标尺必须水平。 假设为了简化起见,标尺必须工作到1000标记,所有数字都左对齐,最后一个数字之后一个空格。 要求长度为零的标尺应打印NaR 负数应打印与右对齐数字相反的标尺(-90,-80,-70,...),否则格式应与上述相同 而且,只需打印到控制台就可以了 准备,开始,打高尔夫球!

5
乐谱翻译
给定ascii乐谱,您必须能够输出音符及其相应的长度。乐谱将包含5到15个音符(含在内),并记录在五线谱上。冷却壁由五条水平线组成,水平线由-个(减号)字符组成,并由空格隔开。五线谱的底线等效于音符“ E”。紧靠底线上方的空格线表示“ F”,并且其底线的间距高于其下方的“ E”。这继续如下。请注意,在重新从“ A”开始之前,音符只会升至“ G”。见下文: F ---------- E D ---------- C B ---------- A G ---------- F E ---------- 请注意,输入中不包含字母。音符使用ao(小写字母ooh)字符叠加在五线谱的顶部,以指示“音符头”。该音符头指示音符的频率,因此如上所述,按字母顺序表示。例如,在乐谱上的音符如下所示表示“ A”: ---- ---- ---- o ---- ---- 像上面的“ A”一样,音符被称为“整个音符”,并且将被演奏一整拍。其他持续时间可以通过从音符中升起的“茎”指示,并且介于零和三个“标志”之间。茎由三部分组成| (竖线或竖线)字符堆叠在音符头上方。没有标志的茎被认为是“四分音符”,并且每节拍演奏四分之一。标志是\(反斜杠)字符,并位于茎的右侧。每个词干将音符演奏的时间减半。每个音符的长度为以下之一:整音符,四分音符,八分音符,十六分音符或三十秒音符。每种类型的便笺如何查找A: -------------------- ----|---|\--|\--|\-- | | |\ |\ ----|---|---|---|\-- o o o o o -------------------- -------------------- 将多个音符放在一起可以得到一个分数。每个注释可以被认为是四个字符宽,每个四个字符块的第一列中都有一个注释。例如 : |\ ----|\--|\---------- |\ …

6
压缩RLE数据以绘制ASCII图形
这个问题是基于什么我想出了回答另一个问题。 有时,这里的问题要求画一些ASCII艺术。一种用于存储数据的简单方法是RLE(行程编码)。所以: qqqwwwwweeerrrrrtttyyyy 变成: 3q5w3e5r3t4y 现在,要画出很大的ASCII艺术,您可能正在获取如下数据(忽略换行符): 19,20 3(4)11@1$20 11@19,15"4:20 4)19,4:20 11@ ^^^ Note that this is "20 whitespaces" (Character count: 45) 用于ASCII艺术的字符永远不会是小写或大写字母或数字,而只能是符号,标记和符号,而总是在可打印的ASCII字符集中。 您想在该字符串中节省一些空间,所以用大写字符集替换数字(“ A”等于1,“ B”等于2,直到“ Z”等于26),因为您永远不会重复一个角色超过26次。这样就得到: S,T C(D)K@A$T K@S,O"D:T D)S,D:T K@ (Character count: 34) 最后,您注意到某些(letter + symbol)组正在重复,因此您将在字符串中出现3次或多次的组替换为小写字符集(按顺序或出现在字符串中,但将其存储在缓冲区中)进行替换(每次替换的格式为“ group + substitution char”),其余字符串保持原样。所以以下几组: S, (3 times) T (4 times) K@ (3 times) …

12
字母的翅膀!
您的任务是打印以下确切文本: az za abyz zyba abcxyz zyxcba abcdwxyz zyxwdcba abcdevwxyz zyxwvedcba abcdefuvwxyz zyxwvufedcba abcdefgtuvwxyz zyxwvutgfedcba abcdefghstuvwxyz zyxwvutshgfedcba abcdefghirstuvwxyz zyxwvutsrihgfedcba abcdefghijqrstuvwxyz zyxwvutsrqjihgfedcba abcdefghijkpqrstuvwxyz zyxwvutsrqpkjihgfedcba abcdefghijklopqrstuvwxyz zyxwvutsrqpolkjihgfedcba abcdefghijklmnopqrstuvwxyzyxwvutsrqponmlkjihgfedcba abcdefghijklopqrstuvwxyzyxwvutsrqpolkjihgfedcba abcdefghijkpqrstuvwxyzyxwvutsrqpkjihgfedcba abcdefghijqrstuvwxyzyxwvutsrqjihgfedcba abcdefghirstuvwxyzyxwvutsrihgfedcba abcdefghstuvwxyzyxwvutshgfedcba abcdefgtuvwxyzyxwvutgfedcba abcdefuvwxyzyxwvufedcba abcdevwxyzyxwvedcba abcdwxyzyxwdcba abcxyzyxcba abyzyba aza 允许以下内容: 在行尾保留尾随空格 大写而不是小写 尾随换行符 请记住,这是code-golf,所以字节数最少的代码将获胜。

4
Pigpen密码加密
Pigpen密码加密 您的任务很简单:编写一个程序来接收文本作为输入并在Pigpen Cipher中输出文本的ASCII表示。 输入值 仅ASCII(无Unicode)字符。您必须至少能够处理16384个字符和256行。 输出量 将所有不是换行符的字符替换为换行符ABCDEFGHIJKLMNOPQRSTUVWXYZ或abcdefghijklmnopqrstuvwxyz用空格替换。 不区分大小写,将每个字母替换为其加密形式(请参阅下一节),在每行之后的三行中的每行后面插入一个空格。每个编码的字符都是3 * 3的ASCII艺术字块。用3 * 3的空格块替换空格。 所有字符都应该在同一三行上(将这三行称为一个猪行),除非有新行开始新的猪行。在猪皮线之间保留法线为空白。 密码 | | | | .| |.| |. --+ for J +-+ for K +-- for L --+ +-+ +-- .| |.| |. --+ for M +-+ for N +-- for O --+ +-+ +-- .| |.| …

3
生成流氓地图
今天,我们将为Roguelike RPG生成地图! 示例图: ########## #### F# #### ## ## C#C# # ## # # C #E # #### # # # # #P # ########## #是墙壁,P是玩家的起点,F是必须达到的终点,C是可以收集的硬币,E是可以战斗的敌人。 地图规格: 高度和宽度都应在10到39之间(包括10和39)。高度不必等于宽度。 地图边框应填满墙壁。 P 应该放在左下角。 F 应该放在右上角。 应该有1到3个敌人。 应该有2到4个硬币。 中间应该有一些墙。应该有从得到一个路径P的每一个C,E以及F,牢记玩家不能斜走。 每种可能的组合都应有发生的机会。 规则 最低字节程序获胜。 您的程序不应接受任何输入。 您的程序可能不会因错误而退出(非致命输出是STDERR可以的,但是在生成地图后我们无法出现类似流氓的崩溃!) 允许使用单个尾随换行符,并允许尾随空格。 不允许其他输出。

1
Tatamibari求解器
背景 Tatamibari是由Nikoli设计的逻辑难题。 Tatamibari拼图游戏在带有三种不同符号的矩形网格上播放:+,-。和|。求解器必须根据以下规则将网格划分为矩形或正方形区域: 每个分区中必须只包含一个符号。 一个+符号必须包含在一个正方形。 甲|符号必须被包含在具有比宽度更大的高度的矩形。 甲-符号必须被包含在具有比高度较大的宽度的矩形。 四个片段可能永远不会共享相同的角落。(这是日本榻榻米瓷砖通常的放置方式。) 以下是一个示例难题,并提供了解决方案: 任务 解决给定的Tatamibari难题。 输入输出 输入是一个2D网格,代表给定的Tatamibari拼图。每个单元包含四个字符之一:+,-,|,和您所选择的字符来表示一个非线索细胞。在测试用例中,使用星号*。 您可以选择任何合适的输出格式,这些输出格式可以明确表示Tatamibari拼图的任何有效解决方案。这包括但不限于:(如有疑问,请在评论中提问。) 4元组的列表,其中每个元组包括矩形的顶部索引,左侧索引,宽度和高度(或任何等效表示形式) 与输入形状相同的数字网格,其中每个数字代表一个矩形 坐标集列表,每个坐标集包括矩形中单元格的所有坐标 如果难题有多个解决方案,则可以输出任意数量(一个或多个)的有效解决方案。输入保证至少有一个解决方案。 测试用例 Puzzle: |-* *+| *-* Solution: 122 134 554 ===== Puzzle: +*** **|* *+** ***- Solution: 1122 1122 3322 3344 ====== Puzzle: |*+*+ ***** ****- ***+| +**** Solution: 12233 12233 44444 55667 …

25
打网球2:东西方比赛
有一个挑战,让我们打网球的丹尼尔。他建议在南北方向建立法院。我的提议是建立一个法院,以东西方向打网球。 您必须打印一个网球场,但是由于机密原因,您必须以最少的字节数进行打印。 网球场 ------x------ | | x | | | |--x--| | | | x | | ------x------ 原始规则是: 没有多余的空间。 没有标签,因为它们将不公平。 允许使用一个可选的尾随换行符。 这是代码高尔夫球,因此以字节为单位的最短代码胜出!

3
输出ASCII“ splat”
如果朝给定方向扔ASCII鸡蛋,最终将得到大小为n的ASCII代码。它以一个o(蛋黄)“开始” ,并以给定的方向(由2到n个 组成的“线”)继续*。的*s被一个“空格”分隔,而的s o和所有“线” 被“ space” 的“线” *分隔。 splat的方向可以是的八个方向之一o,例如: 1 2 3 4 o 5 6 7 8 下面是在方向大小为4的ASCII层片的实施例5,2和3分别。左边是实际的ASCII图示,而右边是一样的图示,但与“空间”“行”与实际的“线”替换(即-或\或|取决于方向)只是为了澄清什么是一个意思空间的“线”。 Size 4, direction 5 * | | |* * | |*| * * |*| |* o * o| |*| * * |*| |* * | |*| * | | |* Size …

5
再次可视化欧几里得算法
任务 给定两个正整数: 绘制由两个整数指定的尺寸的矩形。 重复步骤3,直到没有更多空间。 绘制并填充与(剩余)矩形的三个边接触的最大正方形。 输出结果矩形。 例 例如,我们的输入是6和10。 我们绘制大小为6 x 10的空心矩形: xxxxxxxxxx xxxxxxxxxx xxxxxxxxxx xxxxxxxxxx xxxxxxxxxx xxxxxxxxxx 重复填充正方形后,我们将获得以下结果: aaaaaabbbb aaaaaabbbb aaaaaabbbb aaaaaabbbb aaaaaaccdd aaaaaaccdd 有4个方格位置(a,b,c,d),每个边长6,4,2,2分别。 规则与自由 您必须为每个正方形使用不同的字母。 您可以选择要支持的字母,只要支持的字母都是可打印字符,并且至少10支持字符即可。 在上面的步骤3的每个迭代中,您都有两个选择(在上一个迭代中,只有一个选择)。两种选择均有效。 所需的平方数不会超过您支持的字母数。 您可以按任何顺序用支持的字母填写方块。 测试用例 输入: 6, 10 输出: aaaaaabbbb aaaaaabbbb aaaaaabbbb aaaaaabbbb aaaaaaccdd aaaaaaccdd 要么 aaaaaaccdd aaaaaaccdd aaaaaabbbb aaaaaabbbb aaaaaabbbb aaaaaabbbb 要么 …

4
产生漩涡!
今天的任务是在给定单个参数的情况下创建漩涡。 此参数确定每个臂的长度(以字符为单位)。 每条手臂的每个“层”比最后一个包含更多的字符。 给定臂长,这是漩涡的外观: 0: # 1: # ### # 2: # # # ### # # # 3: ## # # # ### # # # ## 4: # # ## # # # ### # # # ## # # 10: # # # # # #### # …

10
像铁氟龙一样光滑
从字面上看!4月6日是美国国家聚四氟乙烯节,用聚四氟乙烯涂层锅庆祝(我们将做些什么)。因此,给定一个正整数n,创建一个特富龙锅。锅的“锅”部分是一个八边形,其侧面各由n字符组成,除了使用字符{或的侧面外,}视其侧面而定。这些边的字符长度始终为1。如果n为1: _ / \ { } \_/ 正如你所看到的,每一方由一个字符(或者{,},/,\,或_)。如果n是2: __ / \ / \ { } \ / \__/ 句柄将以创建,n+3 =并以零(0)结尾。 如果n是: _ / \ { }====0 \_/ n 是2: __ / \ / \ { }=====0 \ / \__/ n 是3: ___ / \ / \ / \ { }======0 …

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.