Questions tagged «source-layout»

对于涉及源代码的物理布局或物理处理的挑战。

29
我反转了源代码,您反转了输入!
另一种公然敲竹杠一个的敲竹杠一个的敲竹杠。去投票那些! 您的任务(如果希望接受)是编写一个程序/函数,该程序输出/返回其字符串输入/参数。棘手的部分是,如果我反转源代码,那么输出也必须反转。 为简单起见,您可以假定输入始终是仅包含ASCII字母(az),数字(0-9)和空格的单行字符串。 应该支持至少8个字符长的输入(不必超过8个字符)。 空输入的行为是不确定的。 例子 假设您的源代码为ABC,其输入为xyz。如果我CBA改为编写并运行它,则输出必须为zyx。 假设您的源代码为ABC,其输入为96。如果我CBA改为编写并运行它,则输出必须为69。 只要前导或尾随空白在正常输出和反向输出中都一致,就可以接受。

3
编写一个程序,当它向ASCII字母上移N次后,总是打印N
仅使用无需输入的可打印ASCII字符编写程序。作为参考,这是按顺序排列的95个可打印ASCII字符: !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ 当您的程序运行时,它应该打印0(加上可选的尾随换行符)到stdout,然后正常终止。 当你的程序中的每个字符由字符N空间所取代其在打印的ASCII权,从各地循环~空间,所产生的打印的ASCII字符串将理想是,它没有输入和输出n相同的语言编写的程序可运行(加(可选的尾随换行符)到stdout,然后正常终止,对于N = 1到94。 例如,如果您的原始程序是 @Cat~(88 !) 运行它应该输出0并将所有字符按可打印的ASCII比例上移一位 ADbu )99!"* 应该导致另一个程序输出1。再次执行此操作将理想地导致另一个程序输出2 BEcv!*::"#+ 以此类推,直到3和4等,直到移动94次 ?B`s}'77~ ( 理想情况下是输出的程序94。 令人欣慰的是,这只是理想的行为。您的程序及其94个派生程序并不需要全部工作,但是从一开始就连续执行越多越好。(不起作用的程序可能有任何行为。) 计分 您的分数是指从有效的原始程序(输出的程序)开始的连续程序的数量0,即正确输出其相应的N。得分最高(最多95)的答案将获胜。如果有平局,则以字节为单位的最短程序获胜。 例如,如果@Cat~(88 !)输出0和ADbu )99!"*输出1,但BEcv!*::"#+误码,那么你的得分将是2。这是2,即使?B`s}'77~ (准确地输出94,并且即使所有N =方案30至40的工作。仅计算从零开始的连续工作程序数。 笔记 为了避免潜在的争用和漏洞,竞争性答案必须以十进制形式输出其数字,且没有前导零或符号或小数点(即普通0 1 2... 94)。 允许使用使用不同基数或数字格式的语言,但不具备获胜的资格。 可选的尾随换行符的存在不必在各个程序之间保持一致。 不允许使用功能和REPL命令,只能使用完整程序。

15
隐藏的倒置(Robbers的线程)
这是一个警察和强盗的难题,可以在此处找到警察的线索。 您的任务将是在警察的线程中查找提供的程序的字谜,并执行其左倒数。 一旦找到答案,请在下面将解决方案作为答案发布,并通知原始答案者。 您将获得第一个破解程序的分数。

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 

17
自残程序
简而言之,您的目标是创建一个完整的程序,该程序可以修改其自身的源代码,直到源代码的每个字符都与开始时的字符不同为止。 请在您的帖子中包括开始来源和结束来源,以及说明。例如,描述程序的功能(其他),使用的语言,策略等。 规则 修改完成后,您的程序必须暂停。 它实际上必须修改自己的,当前正在运行的源代码(不一定是传递给解释器的文件,而是修改其指令),而不是打印新程序或编写新文件。 不允许出现标准漏洞。 最短的程序获胜。 如果您的语言可以修改自己的文件并执行新的编译器过程,但不能修改自己的(当前正在运行的)源代码,则可以编写这样的程序,而不是将其舍去+ 20%字节。真正的自我修改语言应该具有优势。 编辑:如果您的程序因错误而暂停,请这样指定(并说出错误是什么。)

6
模式中程序的王子前缀
您应该编写一个程序或函数,该程序或函数应尽可能输出或返回《小王子》第一章。您的程序或函数必须是M×N的代码块,其中仅包含可打印的ASCII字符(代码点从32到126),并在每行末尾添加换行符。 您最多只能使用 96个可打印的ascii字符(以及行尾的换行符)中选择的26个字符。 在每一行和每一列中,每个字符都必须与数独谜题相似,即每行或每列两次都不能有字母。 正确的例子代码块用M = 4,N = 3并且alphabet = {a,b,c,d,/,*}: abcd bcd* */ac 代码详细信息 您可以选择代码块的形状(即M和N)。 该块必须完全用字符填充,即每一行必须具有相同的长度。 最后一行末尾的换行符是可选的。 如上面在每一行和每一列中所写,每个字符必须是不同的。 输出细节 您应该输出或返回《小王子》第一章的前缀, 而无需任何其他输出。 如果您在文本中找到换行符,则可以将其表示为任何常见的变体(\ r,\ n,\ r \ n),但仅使用其中之一并将其计为分数的1个字节。 额外的尾随换行符是可选的。 您的分数是输出文本的长度,不包括额外的换行符(如果存在)。分数越高越好。 示例答案 ##Python3, score = 6 alphabet = `print('O\ce w)#X` (alphabet element count = 16) print('O\ nce w')#X 您可以使用此Python 3(ideone)程序或@MartinBüttner提供的CJam程序(在线)检查代码的有效性。

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 

5
二进制卷积
二进制卷积由数字描述M,并应用于数字N。对于的二进制表示形式中的每个位M,如果将该位设置为(1),则通过将与相应位中的相应位相邻的两个位进行XOR N(在必要时进行环绕)来给出输出中的相应位。如果未设置该位(0),则输出中的相应位由中的相应位给出N。 一个有效的示例(具有8位值): 让N = 150,M = 59。它们的二进制表示形式分别为10010110和00111011。 根据M的二进制表示形式,卷积0、1、3、4和5。 位0的结果由对位1和7进行XOR运算得出(因为我们进行了环绕),得出1。 位1的结果由位0和2的XOR运算得出0。 位2的结果由原始位2给出,即1。 第3位的结果由第2位和第4位的XOR运算得出0。 位4的结果由位3和5的XOR运算得出0。 第5位的结果由第4位和第6位的XOR运算得出1。 位6和7的结果由原始位6和7给出,得出0和1。 因此,输出为10100110(166)。 挑战 给定N和M,输出执行Mon上描述的二进制卷积的结果N。输入和输出可以采用任何方便,一致且明确的格式。N并且M将始终在(包括)范围内[0, 255](8位无符号整数),并且应将其二进制表示形式填充为8位以执行二进制卷积。 测试用例 150 59 -> 166 242 209 -> 178 1 17 -> 0 189 139 -> 181 215 104 -> 215 79 214 -> 25 190 207 -> 50 61 …
15 code-golf  binary  integer  bitwise  code-golf  rational-numbers  code-golf  string  palindrome  code-golf  ascii-art  code-golf  code-golf  string  fibonacci  code-golf  math  sequence  code-golf  code-golf  string  palindrome  code-golf  string  code-golf  math  primes  source-layout  code-golf  sequence  binary  integer  code-golf  math  arithmetic  game  code-golf  restricted-source  palindrome  code-golf  restricted-source  palindrome  code-golf  combinatorics  binary  code-golf  string  math  code-golf  ascii-art  number  code-golf  cipher  code-golf  base-conversion  counting  code-golf  sequence  random  classification  code-golf  string  subsequence  code-golf  permutations  code-golf  string  code-golf  string  cipher  code-golf  kolmogorov-complexity  arithmetic  integer  code-golf  quine  markov-chain  code-golf  string  code-golf  code-golf  ascii-art  maze 

2
检错自我修复程序
您的任务是创建一个程序,在该程序中,如果删除了任何一个字符,它将检测到删除了哪个字符,然后将删除的字符重新插入其自己的源文件中。 例如,如果您的程序已RadiationHardened被修改为RadiaionHardened,则您的程序必须输出第5个字节(索引为0)已被修改,然后程序源必须RadiationHardened在执行后立即执行。 注释和规则 您可以假设执行前在源代码中删除了一个字符。未修改程序的行为是不确定的。 您可以假定更改后的字节将被删除,不转置,插入或替换。 如果有多个相同字符的运行,则可以报告运行的第一个或最后一个索引,但要使用的一致。例如,baaad被删除baad可以报​​告1或3(零索引),但是在整个程序中必须相同。 您无需将整个源写到其自己的文件中。您只需要重新插入已删除的字节。 与典型的辐射硬化Quines规则不同,通过读取程序自身的源代码来检测更改的字节是公平的。 您可以通过任何合理的格式输出更改后的字节索引。关于它是0索引还是1索引或任何其他符号,请保持一致。您甚至可以在模板字符串中输出数字。 这是代码高尔夫球,因此最短的程序为准。 祝好运! EDIT1:将要求从替换更改为删除 EDIT2:为重复运行添加了规则

8
混乱的重排
您的任务是编写一个计算机程序,以便将其切成几行(用换行符分隔)时,行的每种排列将输出1到n之间的不同数字!(其中n是总行数)。两种不同的布置均不得输出数字,并且每种布置均应在此范围内输出数字。既然有n!排列程序行的方式,这意味着每个数字应通过一次重新排列输出。 例如python程序 print 1;""" print 2;""" 有两种安排 print 1;""" print 2;""" 和 print 2;""" print 1;""" 第一输出1和第二输出2。 您可以使用所使用语言的标准输出格式。您可能不会假设任何样板。我认为,如果您必须解决语言所坚持的任何格式,那么这一挑战将变得更加有趣。 计分 您的分数将是程序中的行数,分数越高越好。如果愿意,您可以选择输出0到n!-1之间的数字。

11
案例匹配查找替换
以三个输入,文本串T; 一串要替换的字符F;以及用替换它们的字符串R。对于每个T具有相同(不区分大小写)字符的子字符串F,请将其替换为中的字符R。但是,请保持与原始文本相同的大小写。 如果输入的字符R多于个F,则多余的字符应与输入的大小写相同R。如果其中包含数字或符号F,则其中的相应字符R应保持其大小写R。F不一定会出现在中T。 您可以假设所有文本都在可打印的ASCII范围内。 例子 "Text input", "text", "test" -> "Test input" "tHiS Is a PiEcE oF tExT", "is", "abcde" -> "tHaBcde Abcde a PiEcE oF tExT" "The birch canoe slid on the smooth planks", "o", " OH MY " -> "The birch can OH MY e slid OH MY …
14 code-golf  string  code-golf  string  ascii-art  alphabet  code-golf  number  sequence  counting  code-golf  sequence  counting  code-golf  quine  source-layout  code-golf  string  code-golf  decision-problem  game  code-golf  string  quine  source-layout  subsequence  code-golf  quine  code-golf  array-manipulation  integer  code-golf  ascii-art  code-golf  sequence  integer  code-golf  kolmogorov-complexity  code-golf  array-manipulation  integer  code-golf  number  array-manipulation  integer  code-golf  string  number  integer  code-golf  string  ascii-art  code-challenge  test-battery  expression-building  source-layout  printable-ascii  code-bowling  code-golf  number  code-golf  number  string  binary  code-golf  matrix  conversion  code-golf  number  arithmetic 

15
手动逻辑门
编写一个模拟基本逻辑门的程序。 输入:一个全大写单词,后跟2个1位二进制数字,以空格分隔,例如OR 1 0。门OR,AND,NOR,NAND,XOR,和XNOR需要。 输出:输入的逻辑门的输出将被赋予两个数字:1或0。 例子: AND 1 0成为0 XOR 0 1变得1 OR 1 1成为1 NAND 1 1成为0 这是codegolf,所以最短的代码获胜。
13 code-golf  logic-gates  hashing  code-golf  code-golf  number  array-manipulation  integer  code-golf  string  unicode  text-processing  cops-and-robbers  boggle  cops-and-robbers  boggle  code-golf  ascii-art  code-golf  word-puzzle  king-of-the-hill  python  code-golf  sequence  kolmogorov-complexity  code-golf  source-layout  code-golf  string  kolmogorov-complexity  math  number  code-golf  date  code-golf  combinatorics  recursion  game  king-of-the-hill  javascript  code-golf  array-manipulation  code-golf  radiation-hardening  self-referential  code-golf  integer  code-golf  number  code-golf  set-theory  code-golf  sequence  code-golf  string  sorting  natural-language  code-golf  decision-problem  number-theory  primes  code-golf  code-golf  ascii-art  code-challenge  array-manipulation  sorting  rubiks-cube  regular-expression  code-golf  counting  file-system  recursion  code-golf  string  kolmogorov-complexity  color  code-golf  game  code-challenge  permutations  encode  restricted-time  decode  code-golf  math  decision-problem  matrix  integer  palindrome  code-golf  matrix  statistics  king-of-the-hill  king-of-the-hill  python  card-games  code-golf  string  natural-language  code-golf  sequence  number-theory 

8
反手称赞
挑战是为了庆祝我的第一种深奥的语言,反手! 反手是具有非线性指针流的一维语言。指针一次移动三步,仅每第三条指令执行一次。 程序1..1..+..O..@将在终止前加1 + 1,并输出2。中间指令被跳过,因此1<>1()+{}O[]@完全相同的程序。 当指针将要离开磁带末端时,它会反转方向并以另一种方式前进,因此1.@1.O+.同一程序也是如此。注意,它仅对结束指令计数一次。这使我们可以压缩大多数线性程序,例如1O+1@ 您面临的挑战是编写一个带有字符串的程序或函数,并输出如果程序像反手一样被解释时将执行的指令(您不需要处理任何实际的反手指令)。您将只输出直到指针到达字符串的最后一个字符为止(此时执行通常会向后执行)。 但是,等等,还不是全部!当您的程序本身以这种方式解释时,结果代码应输出以下内容之一: (Mostly) works Turing complete 'Recreational' (引号可以是'或",但不能同时是两个) Perfectly okay Only a few bugs 例如,如果您的源代码是code 2 backhand,则程序ce cankb od2ahd应输出这些短语之一。 测试用例: "1 1 + O @" -> "11+O@" "1O+1@" -> "11+O@" "HoreWll dlo!" -> "Hello World!" "abcdefghijklmnopqrstuvwxyz" -> "adgjmpsvyxurolifcbehknqtwz" "0123456789" -> "0369" (not "0369630369") "@" …

2
充满素数
注意:这是受此问题启发的。 任务: 您的任务是n在程序的每个字符重复执行n到位时生成素数。 假设您的程序是: Derp 其中的每个字符都重复一次,因此应输出2。 当每个字符都复制到位时,如下所示: DDeerrpp 这将生成第二个素数,即3。 眼镜: 您的程序必须不接受任何输入,并输出相应的质数。 给定足够的时间和内存,您的程序必须能在所有素数下工作。 开头和结尾的换行符都可以。 输出必须使用该语言的默认基础-如果没有默认基础,则任何基础都可以。 这是代码高尔夫球,因此以字节为单位的最短代码获胜。

11
双重奎因:quine!dlroW,olleH
编写一个程序,该程序在运行时将输出其自己的源代码,而没有其他任何输出。看起来很简单,对吧? 问题是,当源代码反向时,您的程序必须输出“ Hello,World!”。完全没有引号。 这是代码高尔夫球,因此最低字节数为准。 编辑:您的奎纳必须是适当的奎纳。

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.