Questions tagged «restricted-source»

对用于解决挑战的源代码施加了限制,例如,源代码中没有数字。


14
Khinchin的常数,以64个字节或更少的字节为单位
Khinchin常数是一个奇怪的数学常数,根据Wolfram MathWold的说法,“众所周知,很难高精度地计算出来”。 这是100位数字: 2.685452001065306445309714835481795693820382293994462953051152345557218859537152002801141174931847697 ... 编写一个不超过64个字节的程序,以输出Khinchin常数到正确的小数位数的最大数量。 您不得使用任何与Khinchin常数直接相关的内置库常数或函数。(例如,绝对不允许Math.Khinchin(precision)。) 您可以使用数学库来计算对数,求和等。 您可以对全部或部分答案进行硬编码。 您的程序必须产生有限的输出,并且必须在一台相当现代的计算机(例如此处列出的计算机)上运行少于一小时。 您必须输出到stdout。没有输入。 只要http://mothereff.in/byte-counter注册64个字节或更少的字节,就可以使用任何所需的字符。 计分 您的分数是程序从2.68开始正确输出的Khinchin常数中连续数字的位数。您可能会输出不正确的数字,但只有最后一个正确的数字会计入您的分数。 例如,输出 2.68545200 2 06530644530971483548179569382038229399446295305115234234721 得9分。每个数字一个,2 6 8 5 4 5 2 0 0但在2之后不应该是1。

14
非舍入分数
当您将分数转换为十进制数并想要存储该数时,通常必须舍入该数,因为您只想使用一定数量的内存。假设您只能存储5个十进制数字,则5/3变为1.6667。如果只能存储2个十进制数字,则它将是1.7(现在假设它始终在0到9.99之间...)。 如果您现在尝试使用1.7逆转该过程,并且想要取回小数,那将是困难的,因为您知道1.7只是一个四舍五入的数字。当然,您可以尝试17/10,但与“优雅” 5/3相比,这是一个“丑陋”的分数。 因此,现在的目标是找到分母为b的分数a / b,在正确舍入后得出舍入的十进制数。 细节 输入包含1到5位数字的字符串,介于0(包括)和10(不包括)之间,并带有'。'。在第一个数字之后。假设n表示位数。输出必须是两个整数的列表/数组,[numerator, denominator]或者是一个分子为非负数且分母为正数的有理数据类型(可以创建自己的数据类型或使用内置数据类型)。正确四舍五入为n数字(即n-1小数点后的数字)时,分数分子/分母必须等于输入。 限制:仅允许一个循环语句。这意味着您在整个代码中只能使用一个循环语句(如foror while或gotoetc,以及功能循环如map或fold将代码应用于列表/数组的每个元素),但是您可以随意“滥用”它或使用递归等 您应该编写一个函数。如果您的语言没有功能(即使没有),则可以选择将输入存储在变量中(或通过stdin输入),然后打印结果或将结果写入文件。最低字节数获胜。 四舍五入 四舍五入应遵循“常规”四舍五入规则,即,如果要截断的最后一位数字为5或更大,则将四舍五入,对于其他情况,将四舍五入,例如: 四舍五入为4.5494 1位数:5 2位数字:4.5 3位数:4.55 4位数字:4.549 例子 请包括以下测试用例和其他“有趣”的用例: Input 1.7 Output 5/3 Input 0. Output 0/1 Input 0.001 Output 1/667 Input 3.1416 Output 355/113

3
当生活给你柠檬时,做柠檬水
挑战 您将得到一个输入字符串,任何地方的话"Lemon"是发现它应转换到"Lemonade" ,但是在a,d和e在句子中必须借用了别的地方。 例 输入示例: 我小时候发现一个柠檬 示例输出: 我小时候就喝柠檬水 该柠檬水是由从原来的偷下标字母创建 我foun d柠檬水WH é ñ我是一个孩子 这只是一个可能的输出示例,“ e”,“ d”和“ a”可以从任何地方获取(当然单词除外lemon) 评论 •如果,或s 不足e,则必须输出给定字母可进行的操作。例如,输入将输出adbdblemonbblemond • lemon文本可能并不总是独立的(两边都有空格)。例如,您可能lemons在输入中的某处有单词,而输出应为lemonades •输入可以包含任意数量的lemons,甚至0 lemons(在这种情况下,输出将与输入相同) •您可以用大写和小写字母来制作您的柠檬水,例如leMon可以变成leMonade,而ade借用可以是任意大小写(因此也可以变成leMonADe)。您借用的信件的大小写必须保持与借用时相同。(示例输入->输出,he hAD lemOn-> h h lemOnADe) •不必是一个完整的程序,仅一个功能就可以。 •您可以假设输入仅是CP437字符集 高尔夫代码 这是代码高尔夫球,因此赢得最少的字节数! 伪测试案例 *注意:对于任何给定的输入,可能会有多个可能的输出,因此您的程序可能无法完全按照这些测试用例的方式输出,这仅仅是为了使人们可以理解逻辑: 输入:EpaD leMons 输出:p LeMonaDEs 输入:hello world 输出:hello world 输入:柠檬柠檬 输出:柠檬柠檬 *(本e,a,d字母不应该从另一个“柠檬”拍摄) 输入:HE HAD柠檬水 输出:HH …
21 code-golf  string  code-golf  parsing  internet  stack-exchange-api  code-challenge  kolmogorov-complexity  restricted-source  brain-flak  python  logic  pyth  code-golf  string  search  optimized-output  code-golf  tips  language-design  golfing-language  code-golf  tips  language-design  code-golf  number  sorting  pi  code-golf  math  number  code-golf  string  balanced-string  classification  brain-flak  code-golf  math  number-theory  decision-problem  code-golf  tips  code-golf  number  sequence  code-golf  balanced-string  brain-flak  code-golf  math  sequence  arithmetic  fibonacci  code-golf  math  parsing  code-golf  string  keyboard  code-golf  code-golf  string  source-layout  whitespace  code-golf  math  rational-numbers  code-golf  string  code-golf  string  code-golf  math  sequence  code-golf  number  floating-point  code-golf  string  decision-problem  subsequence  code-golf  string  kolmogorov-complexity  code-golf  string  permutations  balanced-string  brain-flak  code-golf  string  math  number  code-golf  string  primes  cipher  code-golf  string  ascii-art  chemistry  code-golf  ascii-art  grid  counting  code-golf  math  arithmetic  integer  code-golf  number  kolmogorov-complexity  code-golf  ascii-art  kolmogorov-complexity  sequence  metagolf  brain-flak  code-golf  ascii-art  kolmogorov-complexity  code-golf  string  whitespace 

30
用给定的宽度绘制空心的#
我从Codingame那里获得了这一挑战,并且对比我的更好的解决方案感到好奇: 通过标准输入给定宽度,在给定的宽度和长度上绘制一个空心的#号正方形。 例: 5结果 ##### # # # # # # ##### 我用python解决了这个问题,所以我对其他python代码特别感兴趣。但是,请随时以所需的任何语言发布您的解决方案。
21 code-golf  string  ascii-art  number  code-golf  grid  code-golf  string  ascii-art  code-golf  alphabet  cipher  code-golf  math  number  code-golf  quine  code-golf  palindrome  polyglot  code-golf  number  array-manipulation  counting  logic  code-golf  string  primes  binary  decision-problem  code-golf  ascii-art  kolmogorov-complexity  popularity-contest  code-golf  probability-theory  code-golf  string  code-golf  python  polyglot  programming-puzzle  c++  code-golf  math  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 

3
区分法语中的男性名词和女性名词(不超过100个字符)
您要编写一个不超过100个字符的小程序。您的程序必须区分男性和女性法语名词。输出应该un是男性的une还是女性的。通常,您可以遵循某些统计规则(例如,如果以“ e”结尾,则女性化的可能性要大于男性)。 输入: 法语单词;它可以包含任何小写字母和破折号,包括带重音符号的小写字母。 输入示例: ami 输出: un如果这个词是男性的,une如果这个词是女性的。 输出示例: un 您不必每个单词都正确;您的目标是尽可能准确。 评分:您的答案必须在100个字符以内。语句如print或console.log或alert根本不指望作为你的总字节数的一部分。您也可以编写执行此任务的函数或方法,在这种情况下,f=x=>属于函数声明的前几个字节(例如)不会计入总数。您的总分数是不正确答案的数量。领带因代码大小而中断。 要测试的名词: un ami un café un chapeau un concert un crayon un garage un garçon un lit un livre un mari un musée un oncle un ordinateur un pantalon un piano un pique-nique un portable un père un …

9
在不使用“素数字符”的情况下查找素数
您的任务(如果选择接受)是编写一个接受整数N作为输入的程序/函数。程序/功能应输出/返回前N个质数的列表。但是这里有个要点:不允许在代码中使用质数字符。素数字符是指其Unicode代码点是素数的字符。在可打印的ASCII范围内,这些是: %)+/5;=CGIOSYaegkmq 但是,如果您的代码使用非ASCII字符,则该规则也适用于非ASCII字符。 有效的输入是一个整数Ñ其中0 <N <= T,其中,可以选择Ť,但它必须大于或等于10000。Ť不必是有限的。 对于无效输入(非整数,超出范围的整数),抛出异常或输出/不返回任何结果/为空。 以前导/结尾空白为输入的整数被认为是无效的。 +以符号字符作为输入的整数被视为无效。 以前导零作为输入的整数被视为有效。 如果您的语言允许您传递已经解析的整数作为输入,则上述解析规则(范围1除外)将不适用,因为int已被解析。 输入始终为10。 不允许使用内置的素数生成器和素数测试器(包括素数分解函数)。 源限制是对Unicode字符强加的,但是如果需要,可以对分数的字节计数进行其他编码。 输出可以包含单个尾随换行符,但这不是必需的。 如果您以字符串形式输出/返回素数列表,则每个素数必须由一个或多个非数字字符定界。您可以选择使用哪个定界符。 这是一个代码高尔夫挑战,最短的代码以字节为单位获胜。 堆栈代码片段以验证您的代码 您可以使用下面的堆栈片段来验证您的代码不包含素字符: var primes=[],max=10000;for(var i=2;i<=max;i++){primes.push(i);}for(var N=2;N<Math.sqrt(max);N++){if(primes.indexOf(N)===-1){continue;}primes=primes.filter(function (x){return x===N||x%N!==0;});}function setText(elem,text){var z=('innerText' in elem)? 'innerText' : 'textContent';elem[z]=text;}function verify(inputCode,resultSpan){var invalidChars=[];var success=true;for(var i=0;i<inputCode.length;i++){var cc = inputCode.charCodeAt(i);if (cc>max){setText(resultSpan,"Uh oh! The char code was bigger than the max. …

21
你好,世界!!!斐波那契分布
您的程序应准确输出:之后Hello world!!!带有或不带有换行符。 您的程序不应输入任何内容。 源代码字符分配必须符合以下条件: 数字字符的数量(0-9)必须恰好是一个斐波那契序列号。 源代码中其他非数字字符!(0-9)的数量必须与上述斐波那契序列号之前的斐波那契序列号完全相同。 源代码中有效字符分布的四个示例: 13个数字,8个非数字字符。 34个数字,21个非数字字符。 55个数字,34个非数字字符。 89个数字,55个非数字字符。 这是代码高尔夫球,最短的代码以字节为单位!祝好运! 编辑:由于此问题与源代码大小相结合,对源代码大小有限制,因此,可接受的答案(如果有多个分享相同的中奖字符长度)将是投票最多(且字符数最少)的答案:2014- 03-01。

7
解释> <>(鱼)
虽然&gt; &lt;&gt;不是流行的语言,但它可能对打高尔夫球很有用,并且已在本网站上使用。它受到Befunge的启发,在指令上有一些相似之处。 所需命令: &gt; &lt; ^ v 更改指令指针的方向(右,左,上,下) / \ | _ # 。指针将根据其已有的方向改变方向。 x 随机方向。 + - * , % 加法,减法,乘法,除法和模。将A和B弹出堆栈,然后将B运算符A推入。除以0会引发错误。 0-9 a-f 将相应的值压入堆栈。a = 10,...,f = 15 = 从堆栈中弹出A和B,如果B = A,则按1,否则按0。 ) 比...更棒。将A和B弹出堆栈,如果B &lt;A ( 小于,则按1 。将A和B弹出堆栈,如果B&gt; A ' " 启用字符串解析,则按1 。字符串解析将找到的每个字符推入堆栈,直到找到结束引号为止。 ! 跳过以下说明。 ? 如果堆栈顶部为零或堆栈为空,则跳过以下指令。(注意:这不会从堆栈中弹出任何东西!) : 复制堆栈中的最高值。 …

14
这是一个截断的三角形数字吗?
相关OEIS序列:A008867 截断三角数 三角数的一个共同属性是它们可以排列成三角形。例如,取21并排列成os 的三角形: Ø OO oo oo oo oo 让我们定义一个“截断:”从每个角切割相同大小的三角形。截断21的一种方法如下: 。 。。 oo oo 。oo。 。。哦。。 (的三角形.是从原始三角形切出的)。 o剩下12 秒,因此12是一个截断的三角形数字。 任务 您的工作是编写一个程序或函数(或等效函数),该程序或函数采用整数并返回(或使用任何标准输出方法)数字是否为截断的三角形数字。 规则 没有标准漏洞。 输入是非负整数。 切口的边长不能超过原始三角形的一半(即,切口不能重叠) 切口的边长可以为零。 测试用例 真相: 0 1 3 6 7 10 12 15 18 19 虚假: 2 4 5 8 9 11 13 14 16 17 …
20 code-golf  math  decision-problem  number-theory  integer  code-golf  number  decision-problem  functional-programming  code-golf  array-manipulation  matrix  code-golf  string  classification  string  code-challenge  binary  compression  decode  code-golf  string  string  code-challenge  balanced-string  encode  code-golf  number-theory  integer  base-conversion  code-golf  math  number-theory  geometry  abstract-algebra  code-golf  array-manipulation  sorting  optimization  code-golf  math  geometry  image-processing  generation  code-golf  string  cops-and-robbers  repeated-transformation  grammars  cops-and-robbers  repeated-transformation  grammars  code-challenge  restricted-source  tips  source-layout  javascript  code-challenge  kolmogorov-complexity  restricted-source  code-golf  combinatorics  counting  math  fastest-code  linear-algebra  code-golf  math  permutations  matrix  linear-algebra  code-golf  string  decision-problem  restricted-source  code-golf  number  array-manipulation  subsequence  code-golf  number  array-manipulation  matrix  code-golf  brainfuck  code-golf  color  code-golf  quine  source-layout  code-golf  subsequence  code-golf  string  ascii-art  code-golf  string  ascii-art  alphabet  code-golf  decision-problem  interpreter  hexagonal-grid  halting-problem  code-golf  string  polynomials  calculus  code-golf  math  decision-problem  matrix  complex-numbers  code-golf  random  code-golf  number  arithmetic 

30
强盗:破解正则表达式-做蛇
这是强盗的线索。在警察的线程是在这里。 蛇形矩阵是遵循此模式的正方形矩阵: 3乘3: 1 2 3 6 5 4 7 8 9 和4比4: 1 2 3 4 8 7 6 5 9 10 11 12 16 15 14 13 您的任务是编写一个代码,该代码将使用输入n并创建这样的矩阵,并使用与警察职位相同的语言,并使用与警察的正则表达式匹配的代码。您代码的输出格式必须与警察代码的输出格式匹配。 请在警察的帖子下发表评论,表明您已破解它。 获奖标准: 获胜者将是提交量最多的用户。如果是平局,那么将有多个获胜者。

2
90°自转程序
介绍 编写一个完整的程序,该程序将ASCII字符的矩形块顺时针旋转90度。当程序本身顺时针旋转90度时,它将ASCII字符块逆时针旋转90。 规则 许多人不使用旋转或转置矩阵的内置函数。例如,在MATLAB / Octave中rot90,'不允许使用转置运算符。 您必须编写一个使用STDIN和STDOUT或最接近的等效语言的完整程序。 您的程序必须为矩形,并假定输入也是矩形。 输入和输出是用换行符分隔的字符串,并且没有尾随的换行符。 当将其源代码作为输入运行时,您的程序必须将自身顺时针旋转90度。输出必须是使用相同语言的第二个程序,该程序将其输入逆时针旋转90度。当旋转的程序被提供其源代码作为输入时,它应输出原始程序的源代码。 注意:这两个程序都必须能用于任何输入,而不仅仅是它们自己的源代码,因此不允许一个字符的quine。 例 说下面是一个有效的程序,它以一种假设的语言ExampleLang将输入旋转90度。 ^f a2% 3 lk (^_^&amp; v D8 $4 / 当以自身作为输入运行时,它将输出另一个有效程序,该程序将其输入逆时针旋转: D l^ 8 kf $ (a 4 ^2 _% ^ /v&amp;3 当第二个程序作为输入提供给自己时,输出原始程序。请注意,空白行应有四个空格,倒数第二行上有一个尾随空格,不能在markdown中呈现。澄清: $ examplelang program &lt; program &gt; rotProg $ examplelang rotProg &lt; rotProg &gt; program1 $ …

4
致命错误挑战
目的 编写一个例程,该例程接受可打印的ASCII字符s字符串,并返回包含与s相同字符的字符串,并重新排序,以使两个字符的子字符串不会出现多次。该程序必须在一台现代计算机上在不到一分钟的时间内处理所有基准字符串(见下文)。我还将向得分最低的答案(在不到一分钟的时间内处理任何有效的30个字符的字符串)颁发50 rep的特别奖励。 例如,给定input Mississippi,有效输出将是issiMspiips(两个字符的子字符串不会出现两次),而无效输出将是ipMsispiiss(因为子字符串is出现两次)。 该例程可以采用以下形式: 从stdin(或等效项)或命令行读取完整的程序,并输出至stdout(或等效项) 接受单个字符串参数并返回字符串的函数 您可以假设输入字符串始终允许至少一个有效输出。 挑战 您的例程必须包含5行或更多行的代码,并用换行符分隔。空行(包括仅包含空格的行)在所有上下文中都将被忽略,并且不会计入总行数。 在源代码中交换任何两行都必须产生致命错误。所谓“致命错误”,是指以下任何一种情况: 源代码无法编译,编译器/解释器声明了致命错误 例程因运行时致命错误或未处理的运行时异常而中止 例程被迫突然终止,异常程序终止,除了可能的错误消息和/或堆栈转储之外,不产生任何形式的输出 或者,可以使用不包含换行符的连续代码块代替行。这些块应分别在源文件中的各自行上显示,并应理解在编译/解释源代码之前应删除换行符。 例如,代码 aaaa bbbb cccc 会凝结为 aaaabbbbcccc 在评估之前。 在这种模式下,致命错误条件适用于交换任何两个代码块(因此适用于交换源代码中的行,然后再去除换行符)。因此,在上面的示例中,例程aaaaccccbbbb,bbbbaaaacccc和ccccbbbbaaaa必须在编译时或运行时都产生致命错误。 使用此替代模式的提交应声明其使用。 计分 让Ñ是在源文件中的非空的文本行的个数,与Ñ ≥5令Ç是由所包含的字节数最长的TextLine在源文件(由字节长度)不计算任何尾随换行符。 提交的分数由c(n + 10)给出。 得分最低的提交者为获胜者。 祝你好运。;) 基准字符串 Abracadabra Alacazam Is Miss. Mississauga Missing? Ask Alaska's Alaskans GGGGAAAATTTTCCCCgggaaatttccc A Man A Plan A Canal …

11
限制性多语种
多重语言是同时在多种编程语言中有效的程序。大多数这样的多语言文字以一种语言的某些构造被解释为另一种语言的注释的方式(例如,#define在C 语言中被解释为几种脚本语言的注释)。 我很好奇,是否有可能制作一个不包含注释的非平凡的多语种,但是当您删除任何非空白字符时也会立即更改,因此,我向您提出这样一个程序。 具体规则如下: (输出)。您的程序必须使用每种语言在控制台上产生一些输出。也就是说,您的程序不允许不打印任何内容而直接退出。 (方差)。作为对标准多语言定义的放松,程序的输出可能会因语言而异。 (错误)。您的程序不得在任何一种语言下产生任何错误(广义定义)。对于大多数语言,这被定义为从编译器和/或解释器返回非零退出代码。 (限制)。从代码中删除任何单个非空白字符都将导致您的程序在每种语言下更改其行为。程序可以通过对该语言无效或更改生成的输出来“更改”。 这是一个代码挑战。优胜者是在大多数编程语言中都有效的程序。为了缩短程序长度,将打破联系。 限制规则不适用于删除多个字符。也就是说,如果同时删除多个字符不会对您的一种语言造成任何影响,那就很好。 请注意,该限制规则表明您不能将空格用作您的一种语言,因为删除任何非空格字符不会改变空格程序的行为。 这是一个满足以下所有限制的程序的简单示例,适用于Python 2和Python 3: print("Hello World!") 删除中的任何字符print将导致两种语言都抛出NameError;删除任何括号或引号将引发SyntaxError,删除任何字符串字符将更改两种语言的输出。(请注意,print("hello", "world")根据上述规则,这是一个更微妙但仍然有效的程序)。 这个示例有点la脚,因为Python 2和Python 3非常相似,因此我不会接受任何其他仅使用同一语言的不同版本的解决方案(尤其是Python 2和Python 3)。

1
高效的无错误*编码
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使它成为Code Golf Stack Exchange 的主题。 3年前关闭。 使命 众所周知,地球上所有已知生物的遗传物质都是用DNA编码的。使用四个核苷酸腺嘌呤,胸腺嘧啶,胞嘧啶和鸟嘌呤。(通常由ATGC表示)。 希望存储整个基因组的生物信息学家当然不希望将其存储为ASCII,因为每个选择只能用两位来表示! 规格 您的任务(如果您选择接受)是编写一对程序,函数或方法,以将ASCII表示形式转换为二进制表示形式,然后转换回二进制表示形式。表示A为b00,Tas b01,Gas b10和Cas b11(此后称为“单位”)。 另外,每个字节的高位应包含该字节中的单位数,从而使每个字节代表一个三元组。 例如:"GATTACCA"成为b11 100001 b11 010011 b10 1100xx。 在ASCII到二进制输入中,空格,制表符和换行符应忽略。不在此集合中的任何字符[ \r\n\tATGC]都是错误,可能会被忽略或终止处理。 在二进制到ASCII的输入中,b00可以忽略两个高位的字节。 ASCII输出可能包含空格;但绝对不能超过二进制输入的大小的4倍加一个字节长,并且必须以换行符结尾。 二进制输出可以包含任意数量的b00xxxxxx“控制”字节。但绝对不能长于ASCII输入。 每个转换程序必须支持任意长度的输入;并应在大约线性时间内完成编码或解码。 扭曲 不幸的是,对于您要执行此任务的生物信息学家而言,他在某种程度上还是在您个人层面或某些层面上委屈了您。 也许他曾经和你姐姐出去一次,却再也没有打电话给她。也许他踩了你狗的尾巴。具体细节并不是很重要。 重要的是您有机会获得回报! 细节 每次转换应引入较小的错误率;每处理一万到一百万个单位一个错误的数量级。 错误可能是以下之一: 复制错误:"GAT TAC CA"变为"GAT TAA CCA" 删除错误:"GAT TAC CA"变为"GAT TAC A" 翻译错误:"GAT TAC CA"变成"GTA TAC …

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.