让我们将原始程序定义为本身没有任何错误,但是如果您通过删除任何连续的N个字符的子字符串来修改它会出错的程序,其中1 <= N < program length
。
例如,三个字符的Python 2程序
`8`
是一个原始程序(谢谢Sp),因为删除长度为1的子字符串所导致的所有程序都会引起错误(实际上是语法错误,但是任何类型的错误都可以):
8`
``
`8
并且由于删除长度为2的子字符串而产生的所有程序也会导致错误:
`
`
例如,如果`8
曾经是一个没有错误的程序,那么`8`
它将不会是原始的,因为所有删除子字符串的结果都必须出错。
在此挑战中,您的任务是编写最短的原始程序,该程序无需输入,但可以输出以下五个单词中的任何一个:
world
earth
globe
planet
sphere
您选择哪个单词完全取决于您。唯一的单词加上可选的尾随换行符应打印到标准输出(或您的语言的最接近替代品)。以字节为单位的最短程序获胜。
笔记:
- 需要一个独立程序,而不是一个功能。
- 这些单词区分大小写;输出
World
或EARTH
不允许。 - 编译器警告不算作错误。
- 出错的子程序可以接受输入或给出输出,或执行其他任何操作,只要它们始终最终出错即可。
这是一个堆栈片段,将列出给定潜在原始程序的哪些程序需要出错:
<script src='https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js'></script><script>function go() { var s = $('#i').val(), e = []; for (var i = 1; i < s.length; i++) { for (var j = 0; j <= s.length - i; j++) { e.push(s.substring(0, j) + s.substring(j + i)); } } $('#o').val(e.join('\n---\n')); }</script>Program:<br><textarea id='i' rows='16' cols='80'>`8`</textarea><br><button onclick='go()' type='button'>Go</button><br><br>Programs that should error: (--- separated)<br><textarea id='o' rows='16' cols='80'></textarea><br>