Questions tagged «whitespace»

对于与空白字符的处理和放置有关的挑战(主要但不限于空格,制表符和换行符),例如与缩进相关的挑战。对于有关深奥的编程语言Whitespace的挑战,请改用[whitespace-language]。

30
消失的元素
给定一个字符串S和一个索引列表X,S通过删除每个索引处的元素来进行修改,并将S结果作为的新值S。 例如,给定S = 'codegolf'和X = [1, 4, 4, 0, 2], 0 1 2 3 4 5 6 7 | c o d e g o l f | Remove 1 c d e g o l f | Remove 4 c d e g l f | Remove 4 c …
17 code-golf  string  array-manipulation  code-golf  string  ascii-art  code-golf  number  sequence  pi  code-golf  number  array-manipulation  code-golf  string  ascii-art  code-golf  math  number  game  code-golf  math  sequence  polynomials  recursion  code-golf  math  number  sequence  number-theory  code-golf  permutations  balanced-string  code-golf  string  ascii-art  integer  code-golf  decision-problem  hexagonal-grid  code-golf  ascii-art  kolmogorov-complexity  code-golf  number  code-golf  matrix  binary-matrix  code-golf  math  statistics  code-golf  string  polyglot  code-golf  random  lost  code-golf  date  path-finding  code-golf  string  code-golf  math  number  arithmetic  number-theory  code-golf  tetris  binary-matrix  code-golf  array-manipulation  sorting  code-golf  number  code-golf  array-manipulation  rubiks-cube  cubically  code-golf  grid  optimization  code-golf  math  function  code-golf  string  quine  code-golf  ascii-art  grid  code-golf  decision-problem  grid  simulation  code-golf  math  sequence  code-golf  path-finding  code-golf  ascii-art  grid  simulation  code-golf  number  whitespace  code-golf  sequence  code-golf  sequence  code-golf  sequence  integer  code-golf  math  game  code-golf  internet  stack-exchange-api  code-golf  sequence  code-golf  internet  stack-exchange-api  code-golf  math  factoring  code-challenge  sequence  polyglot  rosetta-stone  code-golf  string  browser  code-golf  date  code-golf  base-conversion  code-challenge  cops-and-robbers  hello-world  code-golf  cops-and-robbers  hello-world 

20
消除空白行上的空白
嗯,这是我对Stack的另一自私使用。 作为Chromebook的所有者,我经常使用Cloud9使用的编辑器Ace IDE。它有很多用于处理多余空白的工具,但值得注意的是缺少一种:清除空白行。 今天的任务是,从一个地方输入,我可以将其复制粘贴到[ ;)],输出相同的东西,将所有空格和制表符保存在空白行上。 我将给出一些示例,其中#s表示要删除的空白字符。 输入1: if (this.Color !== 'blue') { ## this.Color = 'blue'; } 输出: if (this.Color !== 'blue') { [empty line] this.Color = 'blue'; } 输入2: function outputSomething(times) { for (var iter = 0; iter < times; iter++) { console.log('"# # " represents a tabulator'); // …

3
查找字符串中的模式
在这种挑战下,您的任务是找到具有给定结构的子字符串。 输入项 您的输入应为两个非空的字母数字字符串,一个模式 p和一个text t。这个想法是,的每个字符都p代表一个连续的非空子字符串,t该子字符串彼此相邻出现,并p表示它们的串联。相同的字符对应于相同的子字符串。例如,模式aa代表任何非空正方形(通过将较短的字符串与其自身连接而获得的字符串)。因此,模式aa可以匹配子字符串byebye,并且每次a匹配bye。 输出量 如果文本t包含p匹配的子字符串,则您的输出应为该子字符串,并:在与的字符相对应的字符串之间插入冒号p。例如,如果我们有t = byebyenow和p = aa,那么bye:bye它是可接受的输出。匹配子字符串可能有多个选择,但是您只能输出其中之一。 如果t不包含匹配的子字符串,则您的输出将是悲伤的表情:(。 规则和说明 的不同字符p可以对应相同的子字符串,因此p = aba可以匹配字符串AAA。请注意,这些字符必须对应于非空字符串;特别是,如果p长于t,则输出必须为:(。 您可以编写完整的程序或函数,还可以更改两个输入的顺序。最低字节数获胜,并且不允许出现标准漏洞。 测试用例 以格式给出pattern text -> output。注意,可能存在其他可接受的输出。 a Not -> N aa Not -> :( abcd Not -> :( aaa rerere -> re:re:re xx ABAAAB -> A:A MMM ABABBAABBAABBA -> ABBA:ABBA:ABBA x33x 10100110011001 -> 10:1001:1001:10 …
17 code-golf  string  code-golf  ascii-art  geometry  code-golf  ascii-art  code-golf  sequence  stack  code-challenge  number  sequence  answer-chaining  code-golf  code-challenge  math  combinatorics  binary-matrix  code-golf  number  code-golf  cryptography  bitwise  code-golf  sudoku  code-golf  brainfuck  metagolf  code-golf  probability-theory  number-theory  primes  fewest-operations  factoring  golf-cpu  code-golf  restricted-source  code-golf  graphical-output  sequence  binary  code-golf  tips  c#  code-golf  geometry  code-golf  graphical-output  fractal  code-golf  number  sequence  code-golf  number  array-manipulation  popularity-contest  game  board-game  code-golf  puzzle-solver  grid  code-golf  ascii-art  geometry  grid  tiling  code-golf  ascii-art  whitespace  balanced-string  code-golf  card-games  king-of-the-hill  javascript  code-golf  whitespace  balanced-string  code-golf  code-golf  math  abstract-algebra  code-golf  java  code-golf  interpreter  stack  code-golf  base-conversion  code-golf  tips  code-golf  ascii-art  geometry  brainfuck  metagolf  code-challenge  math  quine  code-generation  code-golf  number  kolmogorov-complexity  arithmetic  expression-building  code-golf  string  code-golf  quine  popularity-contest  code-golf  base-conversion  code-challenge  image-processing  code-golf  conversion  coding-theory 

20
分解一个数字!
您的任务是使用以下格式分解数字。 这与基本转换类似,不同之处在于digits,您列出了values,而不是在基本列表中列出,这样列表就加到了输入上。 如果给定的基为n,则列表中的每个数字都必须采用的形式k*(n**m),其中0<=k<n和m在整个列表中都是唯一的。 眼镜 任何合理的输入/输出格式。您的程序/功能需要2个输入并输出一个列表。 输出列表可以是任何顺序。 0 可以排除或包含。 0允许领导。 允许内置。 测试用例 number base converted list input1 input2 output 123456 10 [100000,20000,3000,400,50,6] or [6,50,400,3000,20000,100000] 11 2 [8,2,1] or [0,0,0,0,8,0,2,1] 727 20 [400,320,7] 101 10 [100,1] or [100,0,1] 计分 这是代码高尔夫球。以字节为单位的最短解决方案获胜。
16 code-golf  number  sequence  number-theory  base-conversion  code-golf  bitwise  hashing  code-golf  string  ascii-art  whitespace  code-golf  math  code-golf  code-golf  image-processing  counting  code-golf  math  arithmetic  checksum  code-golf  code-golf  math  arithmetic  number-theory  code-golf  array-manipulation  random  code-golf  string  code-golf  math  ascii-art  base-conversion  code-golf  graphical-output  geometry  3d  code-golf  math  linear-algebra  matrix  code-golf  math  number  sequence  code-golf  array-manipulation  code-golf  math  matrix  linear-algebra  code-golf  number  sequence  counting  code-golf  string  code-golf  string  restricted-source  quine  sorting  code-golf  string  geometry  code-golf  string  code-golf  networking  code-golf  base-conversion  code-golf  math  matrix  code-golf  arithmetic  linear-algebra  matrix  code-golf  number  arithmetic  grid  code-golf  number  source-layout  code-golf  string  bitwise  checksum  code-golf  array-manipulation  code-golf  string  probability-theory  code-golf  tips  code-golf  sequence  code-golf  string  math  sequence  calculus  code-golf  string  palindrome  bioinformatics  code-golf  math  combinatorics  counting  permutations  code-golf  parsing  logic-gates  code-golf  arithmetic  number-theory  combinatorics  code-golf  math  sequence  polynomials  integer  code-golf  string  ascii-art  chess  code-golf  string  code-golf  number  code-golf  string  ascii-art  parsing  code-golf  code-golf  number  natural-language  conversion  code-golf  arithmetic  code-golf  string  code-golf  ascii-art  decision-problem 

23
使用给定的括号缩进字符串
给程序以下输入: 块开始字符列表 块结束字符列表 要格式化的字符串 使用以缩进的两个字符集分隔的块来格式化字符串。 格式化是在每个级别上用两个空格完成的,并且括号的放置如下例所示。您可以假定开头和结尾字符集是不相交的。 例如{[(<,}])>作为和作为开始和结束字符集以及以下字符串: abc{xyz{text[note{comment(t{ex}t)abc}]}} 预期以下输出: abc { xyz { text [ note { comment ( t { ex } t ) abc } ] } } 您可能没有对“括号”字符列表进行硬编码。但是,没有指定输入方式。您可以根据需要使用命令行参数或通过标准输入。

22
实施空白高尔夫球手
某些二维esolang(例如Forked)和某些非eolang(例如Python)有时可能在代码行之前需要空格。这不是高尔夫运动。另外,我很懒,在编写2d lang之前需要很多空格。您的任务是编写一个使这些语言更具特色的工具。 当然,这不是完美的。例如,当数字是源代码行中的第一个字符时,就不能使用它。但是,它通常是有用的。 挑战 您将编写一个程序或函数,该程序或函数可以... ...采用一个参数,文件名或字符串,或者... ...从标准输入中读取。 您的程序的行为类似于cat,除了: 如果任一行的第一个字符是数字,则您的代码将打印x个空格,其中x是该数字。 否则,将仅打印它。 输入中的所有其他字符也一样。 测试用例 输入: foo bar foo bar 1foo bar foo bar foo bar 2foo bar foo bar foo bar foo bar 输出: foo bar foo bar foo bar foo bar foo bar foo bar foo bar foo bar foo bar …

1
有效迷宫数
给定一个WxH网格,有多少种可能的迷宫? 您对迷宫的了解: 网格正好是H正方形,W正方形是正方形。 共有三种类型的正方形:“开始”,“完成”和“空”。迷宫必须正好包含1个开始点和1个结束点,所有剩余的方块均为空。 整个迷宫周围都有墙壁。 除非违反以下规则,否则墙可以存在于任意两个正方形之间的边缘上: 从开始方块到完成方块必须存在一条路径。 因此,给定两个数字W和H,您必须返回一个数字,代表可能的正方形/墙壁配置的数目。您保证W*H > 1 例如,2x2迷宫具有完全100不同的可能配置。 这是一个代码高尔夫球,所以最短的答案是成功的!

7
C代码压头
情况:您是一名高中老师,正在教您的计算机课如何编写C程序。但是,由于这只是该术语的开始,因此您尚未教他们缩进和间距的重要性。当您标记他们的工作时,您的眼睛受了如此巨大的伤害,以至于痛苦地尖叫着,并意识到这种情况无法持续。 任务:您已决定编写一种使用任何语言的程序,该程序都将有效的C源代码作为输入并以正确的格式输出。您应该确定什么是格式正确的代码,因为这是一场人气竞赛。鼓励您实现尽可能多的功能,以下是一些示例: 在每行的开头添加适当的缩进 在,和其他运算符之后添加空格,例如转换int a[]={1,2,3};为int a[] = {1, 2, 3};。记住不要在字符串文字中处理运算符。 每行后删除尾随空格 将陈述分为几行,例如,学生可以写一行tmp=a;a=b;b=tmp;或int f(int n){if(n==1||n==2)return 1;else return f(n-1)+f(n-2);}全部写成一行,则可以将它们分成不同的行。请注意for循环,它们中包含分号,但我真的不认为应该将它们分开。 定义每个函数后添加新行 您还可以使用其他功能来理解学生的代码。 获胜标准:这是一次人气竞赛,因此多数投票的答案都将赢得。如果出现平局,则以实施最多功能的答案为准。如果那又是平局,则最短的代码获胜。 建议您在答案中包括已实现的功能列表以及示例输入和输出。 编辑:根据注释中的请求,这里是一个示例输入,但是请记住,这只是参考,建议您实现尽可能多的功能。 输入: #include <stdio.h> #include<string.h> int main() { int i; char s[99]; printf("----------------------\n;;What is your name?;;\n----------------------\n"); //Semicolon added in the string just to annoy you /* Now we take …

1
通过整数操作实现IEEE 754 64位二进制浮点数
(我暂时将问题标记为“ C”,但是如果您知道另一种支持联合的语言,则也可以使用它。) 您的任务是+ - * /为以下结构构建四个标准数学运算符: union intfloat{ double f; uint8_t h[8]; uint16_t i[4]; uint32_t j[2]; uint64_t k; intfloat(double g){f = g;} intfloat(){k = 0;} } 这样操作本身就只能操纵或访问整数部分(因此也不能在操作过程中的任何时候都与double进行比较),并且结果是完全相同的(对于非数字结果,例如,功能上是等效的NaN)好像相应的数学运算已直接应用于double。 您可以选择要操作的整数部分,甚至可以在不同的运算符之间使用不同的整数部分。(尽管我不确定您是否要这样做,您也可以选择从联合中的任何字段中删除“未签名”。) 您的分数是四个运算符中每个字符的代码长度总和。最低分获胜。 对于不熟悉IEEE 754规范的我们来说,这是一篇有关Wikipedia的文章。 编辑: 03-06 08:47在intfloat结构中添加了构造函数。您可以使用它们进行测试,而不必手动设置double /etc。

2
重新缩进Java / C / C ++ / etc。码
编写一个添加或删除空格以很好地格式化代码的程序。完成后代码外观的规则: 没有行应包含一个以上的{和}。 A {应该永远是一行中的最后一件事。 A }应该始终是一行中的唯一内容(除空格之前)。 每行前面的空白数量应为当前嵌套计数的固定倍数。(您可以使用任意数量的缩进,只要它没有变化即可。) 不应插入或删除不会有助于满足这些规则之一的空格。 第一行的嵌套计数为0。任何其他行的嵌套计数为前一行的嵌套计数,如果前一行包含a {,则加一个,如果当前行包含a ,则减一}。 {并且}内部字符串文字和注释不计入上述规则。字符串文字是用单引号或双引号引起来的文本,其中单引号或双引号之前带有奇数个反斜杠的字符不会被解释为字符串文字的结尾。注释是用/*和括起来的*/文本,或者是从//行尾开始的文本。在一行中的多个注释开始标记中,只有第一个开始计数。注释不会在字符串文字中解析。 例子 main() {printf("Hello!"); // I don't care about the world... } becomes: main() { printf("Hello!"); // I don't care about the world... } int main(){ puts("a"); puts("b"); } becomes: int main(){ puts("a"); puts("b"); } main() { printf("{"); /* …

1
它会漂浮吗?
挑战 给定代表船只底部的2d字符串作为输入,您必须确定船只是否会漂浮。该2D字符串可以采用最方便的任何格式。(带换行符的字符串,字符串列表,字符列表列表等。)如果真值浮动,则打印真实值,如果不正确,则打印假值。 如果底部的密度不一致,则船将翻倒,因此,每个字符都必须相同。另外,如果船上有大洞(用空格表示),它将下沉,因此您的船上不得有面积大于4的洞。这是一个示例: ######## # #### ######## # ## ## # ##### ######## 这艘船是有效的,因为其中最大的孔的面积为4。这艘船: ######## ######## # ## # ##### ######## 无效,因为它有一个面积为7的孔。您可以放心地假设每个输入的外部都是没有孔的实心矩形。这是更多测试: $$$$$$$$ ***$$$$$ ***$$$$$ ***$$$$$ $$$$$$$$ Invalid density. Sink. %%%%%%%% % % % %%%%% % % % % %%%%%%%% None of the holes are larger than 4. Float. OOOOOOOO …

3
展开选项卡(实现expand(1))
这次您的任务是实现POSIX expand(1)实用程序的变体,该实用程序将制表符扩展为空格。 您的程序将采用制表符规范,然后读取标准输入中的输入,并用适当的空格量替换输入中的制表符以到达下一个制表符。结果应写入标准输出。 制表符规格 制表符规范由一个数字或一个逗号分隔的制表符列表组成。在单个数字的情况下,将其重复,就好像它的倍数出现在以逗号分隔的列表中一样(即4充当4,8,12,16,20,...)。逗号分隔列表中的每个条目都是一个正整数,可以选择以前缀+。甲+前缀表示在逗号分隔列表中的先前的值的相对差。列表中的第一个值必须是绝对值(即无前缀)。制表符指定下一个非空格字符的列(在扩展的制表符之后),最左边的列作为数字0。制表符应始终扩展到至少一个空格。 输入输出 您可以自行决定将Tabstop规范用作程序的第一个命令行参数,或者从标准中读取作为第一行输入(由换行符终止)。读取制表符后,将处理和扩展剩余的输入(在前一种情况下为所有输入),直到EOF为止。扩展后的输出应写入标准输出。 假定所有扩展的制表位和所有输入的最大宽度为80列。所有扩展的制表符都在严格增加。 例 Tabstop规范4,6,+2,+8等效于4,6,8,16,并且两者都输入 ab<Tab>c <Tab><Tab>d<Tab>e<Tab>f 扩展为(␣表示空格) ab␣␣c ␣␣␣␣␣␣d␣e␣␣␣␣␣␣␣f 01234567890123456 (Ruler for the above, not part of the output) 1111111 评分是纯粹的代码高尔夫;最短的代码胜出。
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.