您是用户:创建需求


15

我的老板*不理解为什么她的程序员会对更改程序要求的用户产生负面反应。帮助她了解!在每个答案上,创建一个新要求。然后,使用新的编程语言编写可解决该要求和所有先前要求的程序/功能。

例子

用户1发布第一个答案。他指定程序必须输出“ Hello,World”。他用Java创建了一个程序,输出“ Hello,World”。

用户2发布第二个答案。她指定程序必须接受输入n并输出第n 质数,直到语言的最大数量。她用C ++创建了一个程序,该程序接受输入n并输出第n 素数并输出“ Hello,World”。她无法用Java创建程序。

用户3发布第三个答案。他指定程序源不能包含文本“ Hello”。他在Python中创建了一个函数,该函数接受输入n并输出第n 素数和“ Hello,World”。而未在其来源中使用文本“ Hello”。他无法用Java或C ++创建程序。

答案格式

#Answer # - <language name> [version, if pertinent]

Requirement: <rule>.

<code>

[explanations, encoding, TIO link, etc.]

回答规则

  • 答案必须遵循上述格式或类似格式。

  • 答案可以是程序或函数。

  • 答案必须满足直到当前答案的所有要求。

  • 同一用户不能连续发布两个答案。

  • 如果两个答案发布的编号相同,则应删除稍后发布的答案。

  • 除非您搞砸了并且没有其他答案,否则不要编辑您的要求。

  • 如果您的答案不符合您的规则和所有其他规则,则该答案无效。在其他人发布下一个答案之前,尝试解决此问题。

  • 如果在任一版本中创建的程序或函数在另一版本中的行为不同,则同一语言的不同版本仅算作不同语言。

  • 答案可能不接受任何不需要的输入,并且可能不输出除了必需的空格以外不需要的任何内容。但是,尽管在后台程序必须满足所有“隐藏”(来自用户)的要求,但它可以执行您想要执行的其他任何操作,尤其是在必须满足执行时间要求的情况下。

需求规则

  • 该需求只能指定一个需求。该要求可以是有条件的,并且如果此要求需要输入和/或输出,则可以将其包括在内。

  • 该需求可能不会删除或修改先前的需求,也不会与之冲突,但可以扩展一个需求(指定哪个)。

  • 如果需求限制了来源(),或者需要来源中的文本,则它只能删除单个字符串(例如0Hello),或者只需要单个字符。

  • 该要求不能要求源小于100字节,不能要求特定的编码,或者不能排除大多数通用语言。

  • 该要求可能不会强制源遵循受限源中指定的模式以外的其他模式(例如,以特定字符开始每行,或将(@Conor)散列为特定值)。

这是,因此所有答案都基于先前的答案。我和其他人可能会尝试保留所有要求的清单。要按顺序查看答案,可以按最旧的排序。要查看最新答案,请按最旧答案排序,然后导航到列表末尾。

如何取胜(更改为保留投票):

如果两周没有发布答案,挑战就结束了,并将计算分数。将通过对每个用户的答案总数求和来计算分数,但将根据帖子在链中的距离进行加权(由于以后的帖子有更多要求,因此难度更大)。

伪代码:

for each answer in user.Answers {
   score += 1 + (answer.number / 100)
}

例:

萨利有三个答案。她发布了答案5,答案7和答案20。

她的成绩将是1.05 + 1.07 + 1.2 = 3.32。如果它是答案的和,则她的分数将是3,但是链深度的权重将奖励较难的答案。

开始:

这是我老板*给出的第一个要求:

要求0:程序必须先输出0。

*虚构的

要求和语言清单

请注意,这可能已过时-请在发布答案之前先查看最后发布的答案,以确保您满足所有要求。非常抱歉,如果您创建了一个精美的程序,只供某人窥探它-如果您真的要发布它,请指定不竞争。

全部(但也许不是电流)要求:不能包含0*]在源代码中,不能使用连接上换行内置。Outputs 0,然后接受一个非负整数输入,n并输出一个换行符,后跟0索引的n第一个斐波那契数(可以被1索引),然后是一个换行符,接着是相同的输入n平方,然后是一个换行符,再n乘以一个新的输入m,然后一个换行符,然后是10^B,其中B是源代码中的字节数,然后是一个换行符,然后是n第一个0-indexed(也可以是1-indexed)素数,然后是一个换行符,其次是n和m的最大公约数。

0:程序必须先输出0语言:
不适用1:程序源不能包含0语言:05AB1E
2:程序采用非负整数输入n并输出换行符,后跟0-indexed第n个斐波那契数(可以1索引)。语言:dc
3:程序输出换行符,后跟相同的输入n平方。语言:J
4:程序输出换行符,然后n乘以新输入m语言:欧姆
5:程序不能包含*(ASCII码0x2A)。语言:Python 3
6:程序输出换行符,其后是10^B,其中B是源代码中的字节数。语言:Mathematica
7:程序输出换行符,后跟n第th个0索引(也可能是1-indexed)的质数。语言:JavaScript(ES6)
8:该程序不使用内置的新行联接,但可以使用任何其他内置的联接。语言:Jelly
9:程序输出换行符,后跟n和m的最大公约数。语言:Scala
10:该程序不能包含]语言:Pyth

当前分数(按第一篇文章排序)

Okx:1.01
R. Kap:2.09
Conor O'Brien:1.03
Nick Clifford:1.04
Eric Rose:1.05
Greg Martin:1.06
Outgolfer的Erik2.18
math_junkie:1.09


3
为什么接受最后一个答案?这使得您似乎赢得了添加任何人都无法满足的要求。
xnor

5
例如,“程序的md5哈希必须为...”
Conor O'Brien

2
即使规则坚持下来以防止要求终止链条,我仍然认为拥有“胜利条件”会鼓励人们制定几乎不可能的规则,而不是有趣的规则。
xnor

2
@StephenS好吧,人们似乎并没有争取胜利,所以看起来我的关注点放错了位置。
xnor

2
这应该被称为“规模扩张”
NonlinearFruit

Answers:


2

答案10-珀斯

要求:接受两个输入,n(> = 0)和m输出 0而无需使用0*]在源代码中的任何地方,并且在不建宏用于接合上换行符。然后输出一个新行随后1-indexed第n个Fibonacci数(可被0编入索引),然后是换行,接着n平方,跟着一个新行,随后n乘以m,跟着一个新行,随后10^B在那里B是字节数在源代码中,后跟换行符和nth 1索引(也可以是0索引)素数,最后是换行符和n和m的最大公约数。

JU2KE=H2VQ=+Js>2J=+YK=hHW!P_H=hH;jb[ZeJ^Q2sY^T51HiK

在线口译


是的,这也是打高尔夫球的:-)
Erik

另外,在发表评论之前,不,我不能只使用j而不是jb,因为那样的话,我将使用内置的新行联接功能。
暴民埃里克(Erik the Outgolfer)

6

答案1-05AB1E

要求:打印0...,而0源代码中没有

¾

4

答案3- J

echo"+(1-1),(*:,~[:+/@:!&i.-)@".1!:1(3)

要求:输出中00包含源代码,然后接受非负整数输入,n并输出换行符,后跟0-indexed n第th个斐波那契数(可以被1索引),后跟换行符,再跟相同的输入n平方。

在线尝试!


4

答案4 — 欧姆

要求:输出中00包含源代码,然后接受非负整数输入n并输出换行符,然后输出0索引的n斐波那契数(可以是1索引),然后是换行符,再由相同的输入n平方,紧跟换行符,再n乘以新输入m

¼,≡ƒ,²,*,

4

答案2-DC

12298P?sa1 1-sb1sc[lblcdsb+scla1-dsa1 1-<y]dsyxlcp

要求:输出0不包含0在源代码中,然后采用非负整数输入n并输出换行符,后跟0-indexed n第th个斐波那契数(可以被1索引)。

在线尝试!


@ R.Kap没问题:)
斯蒂芬

2
当我阅读新要求时,出于某种原因,我开始大笑。+1。
SparklePony同志17年

4

答案5 -Python 3

要求:在源代码中输出0而不为0,然后接受一个非负整数输入n,并输出一个换行符,后跟0索引的第n个斐波那契数(可以是1索引),然后是一个换行符,然后是相同的输入n平方,后跟换行符,后跟n乘以新输入m。不要使用*ASCII码0x2A 字符。

    def f(n, m):
        print(1-1)
        a = 1-1
        b = 1
        for i in range(n):
            c = a+b
            a = b
            b = c
        print(b)
        print(n.__mul__(n))
        print(n.__mul__(m))

3

答案6 — Mathematica

要求:在源代码中输出不带0或*的0,然后接受一个非负整数输入n,并输出一个换行符,后跟0索引的第n个斐波那契数(可以是1索引),后跟一个换行符,然后是相同的输入n平方,后跟换行符,再由n乘以新的输入m,再跟换行符,再跟10 ^ B,其中B是源代码中的字节数。

((e=Echo)[1-1];e@Fibonacci@#;e[#^2];e[1##];2^# 5^#&@59)&

1
是的,因此,在我看到EricRoe击败我一分钟之后,我急忙编辑:)
Greg Martin

2

答案7-JavaScript(ES6)

(a,b)=>String.fromCharCode(48)+'\n'+(m=(a)=>a>1?m(a-1)+m(a-2):1)(a)+'\n'+Math.pow(a,2)+'\n'+Math.exp(Math.log(a)+Math.log(b))+'\n'+1E257+'\n'+(T=(u,i=2,l=1-1,m=2)=>l<=u?(p=(o,z=2,s=1-1)=>z<o?p(o,z+1,s+(o%z<1&&z!=o)):s)(i)<1?T(u,i+1,l+1,i):T(u,i+1,l,m):m)(a)

要求:此函数需要两个输入,一个非负整数n和任意数字,m返回一个包含0不使用0源代码中任何地方的字符串的字符串,然后返回一个换行符,后跟0-indexed的nFibonacci数字(可以被1索引),然后是由一个新行,接着n平方,跟着一个新行,随后n乘以m而不使用*在源代码中的任何地方,跟着一个新行,随后10^B在那里B是在源代码中的字节数,最后接着是换行符和第- n0索引(也可以是- 1索引)的素数。

测试片段


更改String.fromCharCode(48)为,可以节省大量的字节1-1。并不是说它真的很重要;-)(此外,源代码中稍后还会有两个零,您可以用相同的方式进行修复)
ETHproductions

1

答案8- 果冻

要求:此函数需要两个输入,一个非负整数n和任意数字,m返回一个包含0不使用0源代码中任何地方的字符串的字符串,然后返回一个换行符,后跟0-indexed的nFibonacci数字(可以被1索引),然后是由一个新行,接着n平方,跟着一个新行,随后n乘以m而不使用*在源代码中的任何地方,跟着一个新行,随后10^B在那里B是在源代码中的字节数,最后接着是换行符和nth 0索引(也可以是1索引)素数。不允许在换行符上加入内建函数,但仍允许加入内建函数。

ÆḞṭØDW⁺¤;⁸²¤;×;ȷ25;⁸ÆN¤j⁷

在线尝试!


是的,这是打高尔夫球的。
暴民埃里克(Erik the Outgolfer)'17

1

答案9-Scala

要求:接受两个输入,n(> = 0)和m。输出时0不使用源代码0*在源代码中的任何位置,也不需要内置用于在换行符上进行连接的内建函数。然后输出一个新行随后1-indexed第n个Fibonacci数(可被0编入索引),然后是换行,接着n平方,跟着一个新行,随后n乘以m,跟着一个新行,随后10^B在那里B是字节数在源代码中,后跟换行符和nth 1索引(也可以是0索引)素数,最后是换行符和n和m的最大公约数。

(n:Int,m:Int)=>{
 val z=1-1;val o=println _;var i=1;var j=z
 o(z)
 o((1 to n).foldLeft(z,1)((a,b)=>(a._2,a._1+a._2))._1)
 o(math.pow(n,2))
 o(List.fill(n)(m).sum)
 o(math.pow(9+1,299))
 while(j!=n){i+=1;if((2 to i-1)forall(i%_!=z))j+=1};o(i)
 o((1 to math.min(n,m)).filter(c=>n%c==z&&m%c==z).last)
}

在这里尝试

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.