Questions tagged «kolmogorov-complexity»

非正式地,Kolmogorov复杂度是描述或产生恒定对象(例如字符串或图像)所花费的代码量。在此类别中发布挑战时,请确保它为现有挑战添加了新内容。

30
打印奥斯卡最佳图片奖得主
这项挑战是向2017年奥斯卡最佳影片奖得主La La Land Moonlight致敬! 您的挑战是打印文本 啦啦土地 暂停一秒钟,然后将文本更改为显示 啦啦地月光原始文本(La La Land)必须带有删除线。这可以通过清除屏幕,在原始文本上绘图或通过任何其他巧妙的解决方案来实现。 这是一个代码高尔夫球,因此最低字节获胜。适用标准代码高尔夫球规则。

30
字母三角形
您将打印此确切文本: A ABA ABCBA ABCDCBA ABCDEDCBA ABCDEFEDCBA ABCDEFGFEDCBA ABCDEFGHGFEDCBA ABCDEFGHIHGFEDCBA ABCDEFGHIJIHGFEDCBA ABCDEFGHIJKJIHGFEDCBA ABCDEFGHIJKLKJIHGFEDCBA ABCDEFGHIJKLMLKJIHGFEDCBA ABCDEFGHIJKLMNMLKJIHGFEDCBA ABCDEFGHIJKLMNONMLKJIHGFEDCBA ABCDEFGHIJKLMNOPONMLKJIHGFEDCBA ABCDEFGHIJKLMNOPQPONMLKJIHGFEDCBA ABCDEFGHIJKLMNOPQRQPONMLKJIHGFEDCBA ABCDEFGHIJKLMNOPQRSRQPONMLKJIHGFEDCBA ABCDEFGHIJKLMNOPQRSTSRQPONMLKJIHGFEDCBA ABCDEFGHIJKLMNOPQRSTUTSRQPONMLKJIHGFEDCBA ABCDEFGHIJKLMNOPQRSTUVUTSRQPONMLKJIHGFEDCBA ABCDEFGHIJKLMNOPQRSTUVWVUTSRQPONMLKJIHGFEDCBA ABCDEFGHIJKLMNOPQRSTUVWXWVUTSRQPONMLKJIHGFEDCBA ABCDEFGHIJKLMNOPQRSTUVWXYXWVUTSRQPONMLKJIHGFEDCBA ABCDEFGHIJKLMNOPQRSTUVWXYZYXWVUTSRQPONMLKJIHGFEDCBA ABCDEFGHIJKLMNOPQRSTUVWXYXWVUTSRQPONMLKJIHGFEDCBA ABCDEFGHIJKLMNOPQRSTUVWXWVUTSRQPONMLKJIHGFEDCBA ABCDEFGHIJKLMNOPQRSTUVWVUTSRQPONMLKJIHGFEDCBA ABCDEFGHIJKLMNOPQRSTUVUTSRQPONMLKJIHGFEDCBA ABCDEFGHIJKLMNOPQRSTUTSRQPONMLKJIHGFEDCBA ABCDEFGHIJKLMNOPQRSTSRQPONMLKJIHGFEDCBA ABCDEFGHIJKLMNOPQRSRQPONMLKJIHGFEDCBA ABCDEFGHIJKLMNOPQRQPONMLKJIHGFEDCBA ABCDEFGHIJKLMNOPQPONMLKJIHGFEDCBA ABCDEFGHIJKLMNOPONMLKJIHGFEDCBA ABCDEFGHIJKLMNONMLKJIHGFEDCBA ABCDEFGHIJKLMNMLKJIHGFEDCBA ABCDEFGHIJKLMLKJIHGFEDCBA ABCDEFGHIJKLKJIHGFEDCBA ABCDEFGHIJKJIHGFEDCBA ABCDEFGHIJIHGFEDCBA ABCDEFGHIHGFEDCBA ABCDEFGHGFEDCBA ABCDEFGFEDCBA ABCDEFEDCBA ABCDEDCBA ABCDCBA ABCBA …

30
海底有个洞
在尝试(并失败)说服我的小儿子吃晚餐时,我尝试唱歌。在这首歌的中途,我意识到公式结构可能很适合打高尔夫球! 任务是编写一个不接受任何输入并产生以下文本的程序或函数: There's a hole in the bottom of the sea There's a hole in the bottom of the sea There's a hole, there's a hole There's a hole in the bottom of the sea There's a log in the hole in the bottom of the sea There's a log …

13
极端斐波那契
这个网站上已经进行了十亿次的斐波那契挑战,所以让我们通过十亿次的斐波那契挑战来为事情加分吧! 您面临的挑战是如何使用尽可能短的程序输出第1,000,000,000个斐波那契数的前1000个十进制数字。然后,可以选择在其后跟随您选择的任何其他输出,包括但不限于其余数字。 我使用的约定fib 0 = 0,fib 1 = 1。 您的程序必须足够快才能运行并验证其正确性。为此,这里是前1000位: 7952317874554683467829385196197148189255542185234398913453039937343246686182519370050999626136556779332482035723222451226291714456275648259499530612111301255499879639516053459789018700567439946844843034599802419924043753401950114830107234265037841426980398387360784284231996457340782784200767760907777703183185744656536253511502851715963351023990699232595471322670365506482435966586886048627159716916351448788527427435508113909167963907380398242848033980110276370544264285032744364781198451825462130529529633339813483105771370128111851128247136311414208318983802526907917787094802217750859685116363883374847428036737147882079956688807509158372249451437519320162582002000530798309887261257028201907509370554232931107084976854715833585623910450679449120011564762925649144509531904684984417002512086504020779012501356177874199605085558317190905395134468919443313026824813363234190494375599262553025466528838122639433600483849535070647711986769279568548796855207684897741771784375859496425384355879105799

30
让我们画一些Atari ST炸弹!
介绍 在雅达利ST是从80年代中期到90年代初的时代,搭载了摩托罗拉68000微处理器一个相当流行的个人电脑。在这台机器上,未捕获的CPU异常的操作系统的默认行为是在屏幕上显示一行炸弹,如下图所示: 来源:https ://commons.wikimedia.org/wiki/File : Row_of_bombs.png 注意:取决于操作系统版本,炸弹图形可能会略有不同。但是,让我们以此作为参考。 炸弹的数量取决于异常向量,最常见的是: ($ 008)巴士错误:2枚炸弹 ($ 00c)地址错误:3枚炸弹 ($ 010)非法指令:4枚炸弹 目标 您的目标是编写一个程序或函数,以打印或输出此类Atari ST炸弹的ASCII艺术作品。 输入项 表示要显示的炸弹数量的整数。您的代码必须支持最常见的值:2、3和4。支持越来越少的炸弹是可以的,但既不是必需的,也不受奖励。 输出量 原始炸弹由16x16像素的图块组成,此处以ASCII和二进制形式表示: ....##.......... 0000110000000000 .#.#..#......... 0101001000000000 .......#........ 0000000100000000 #..#....#....... 1001000010000000 ..#...#####..... 0010001111100000 ......#####..... 0000001111100000 ....#########... 0000111111111000 ...###########.. 0001111111111100 ...###########.. 0001111111111100 ..#############. 0011111111111110 ..########.####. 0011111111011110 ...#######.###.. 0001111111011100 ...######.####.. 0001111110111100 ....#########... 0000111111111000 .....#######.... …

15
每日ASCII艺术#1-双结
编写一个完整程序或一个函数,该程序或函数需要一个正整数N作为通过STDIN /命令行/ ARGV或函数参数的输入,并打印一个N与STDOUT 相对应的ASCII双结。 ASCII双结看起来像这样: __ __ __ __ __ __ / \/ \/ \/ \/ \/ \ | /\/ /\/ /\/ /\/ /\/ /\ | | \/ /\/ /\/ /\/ /\/ /\/ | \ \/\ \/\ \/\ \/\ \/\ \/ /\ \/\ \/\ \/\ \/\ \/\ \ | /\/ …

15
元素周期表-代码高尔夫
基于实用高尔夫-美国 您的任务是在给定元素名称的情况下找到元素的缩写(符号),最多为ununoctium(118)。使用Wikipedia上的元素周期表。 多亏了ossifrage,您可以在http://pastebin.com/DNZMWmuf找到完整的缩写元素列表。 您不得使用任何外部资源。此外,您可能不使用任何专门有关元素周期表元素的内置数据。有标准漏洞。 输入项 输入可以从标准输入,文件prompt,input等等。 输入格式: 以下所有有效输入: Carbon carbon CARBON cArBOn 本质上,元素名称-不区分大小写。 您不必处理拼写错误或任何无效的元素名称。无效的输入是未定义的行为。 输出: 元素的符号。第一个字符必须是大写,其余 必须是小写。 输出示例: C 测试用例: Carbon -> C NiTROGen -> N Sodium -> Na Gold -> Au Silver -> Ag Tin -> Sn 元素比状态多得多,因此我希望为这些元素找到一个通用规则会更加困难。 这是代码高尔夫。最短的代码胜出!

30
像素艺术,第1集:展示超级马里奥
这是我! 今天的任务很简单:编写一个程序或一个函数,在NES上的蓝色背景上显示来自Super Mario Bros的空闲的小Mario小精灵。 任何种类的输入都是有效的,只要它在屏幕/窗口/浏览器的任何位置显示那些12 * 16像素即可。 (编辑:如果您的语言不能做像素画,则可以放大显示的图像。您还可以输出ASCII画或HTML画,但是使用正确的颜色。) 图片(放大400%): 您必须使用以下颜色: 蓝色:#6B8CFF 红色:#B13425 绿色/棕色:#6A6B04 橙色:#E39D25 最短的程序(字符数)获胜! 存在标准漏洞(尤其是不允许网络连接),但是允许在程序中硬编码和显示图像文件。(使用此技巧的条目将单独排名) 开始了! 现任排行榜 仅使用代码的最短答案: Mathematica,141. https://codegolf.stackexchange.com/a/39916/10732(作者MartinBüttner) 击,158. https://codegolf.stackexchange.com/a/40002/10732(由hpsMouse) ... 使用某种硬编码图像的最短答案: HTML,102b。https://codegolf.stackexchange.com/a/39923/10732(由xem和NiettheDarkAbsol撰写) PHP,131b。https://codegolf.stackexchange.com/a/39926/10732(作者NiettheDarkAbsol) ...

30
将1、2、3、4、5、6、7、8和9转换为“一个”,“两个”,“三个”等
优胜者:Professorfish的猛击答案!整个9个字节!哇! 您可以继续提交答案,但是您将无法再获胜。供后代保留的原始帖子: 您的目标是将1-9之间的整数转换成它代表的单词。 您无需担心小数 用户将输入一个数字。假设他们永远不会输入10或更高的值 用户必须在某个时候键入数字,但是程序读取它的方法并不重要。它可以与stdin一起使用,读取文本文件等,但是用户必须在某个时候按键盘上的9按钮(例如) 它不区分大小写(例如,“一个”,“一个”,“ oNe”,“ OnE”等都是可以接受的) 允许HTTP / etc请求,但是服务器执行的所有请求代码都将计入最终代码的字节数(例如,如果我有C ++程序发出HTTP请求,则HTTP请求中使用的PHP代码将被计入) 任何可以编译和运行的东西都是可以接受的 该竞赛已于 2014年6月27日(发布后7天)结束。 这是一个代码高尔夫球,因此最短的代码获胜

30
打印“ N NE E SE S SW W NW”
这似乎是微不足道的,但是由于经过一些努力,我无法击败J语言中的字面解决方案,因此我认为这可能会带来不错的挑战(不过,很明显,这并不是针对J的挑战)。 标题说明了一切。您只需要编写返回或打印的程序或函数(不带参数): N NE E SE S SW W NW 您可以使用换行符代替空格。 一个无参数函数,返回一个字符串数组,例如 ['N', 'NE', 'E', 'SE', 'S', 'SW', 'W', 'NW'] 也可以接受。 字母可以是大写或小写字母,但不能混合使用。

30
画瑞士国旗
任务:输出瑞士国旗。 瑞士国庆节快乐/ Schweizer Bundesfeiertag /瑞士国庆日/ Fes nazionale svizzera / Fiasta naziunala svizra! 详细信息: 标记由#FFFFFF红色(#FF0000)背景上的白色()叉组成。十字架由一个6x6的正方形组成,每个侧面粘贴有尺寸为6x7的手臂。十字在32x32正方形背景的中心,每边相距6个单位。(来源) 参与者可以选择输出大小,但是图像必须与这些比例完全匹配,这意味着其大小必须是32的倍数。 最低版本如下所示:

12
将数字翻译成法语
法国人用一种特殊的方式拼写数字。 1-16是“正常” 17-19拼出了10 + 7。10 + 8、10 + 9。 20-69岁是“正常”(好吧,好吧!不是真的,但是他们正在挑战中) 70-79是60 + 10、60 + 11 ... 60 + 10 + 7、60 + 10 + 8、60 + 10 + 9。 80-99是4 * 20、4 * 20 + 1、4 * 20 + 2 ... 4 * 20 + 16、4 * 20 + 10 …


30
现在我知道了我的ABC,您会不会和我一起打高尔夫球?
编写一个程序或函数,输出不区分大小写的确切文本: A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z. (基于许多美国孩子学习的字母歌曲,尽管对其进行了编辑以提高可压缩性,但它们仍有助于记忆该字母。) 输出必须看起来完全相同上述(再次,不区分大小写),但也可以包含在每一行和/或后换行符尾随空格。注意最后的句点。 这是代码高尔夫球,因此以字节为单位的最短代码获胜。

30
元素名称高于118
IUPAC用他们无法忍受的智慧为任何新创建的元素创建了一个系统的元素名称。这是元素的临时名称,直到他们最终决定使用实际名称。它的工作方式如下:元素编号的每个数字都根据其值分配一个前缀。前缀末尾带有“ ium”。完成此操作后,如果您得到双倍i(ii)或三倍n(nnn),则将它们替换为单个i和双倍n。元素的符号是串联使用的每个前缀的首字母,并将结果大写。使用的前缀如下。 0 nil 5 pent 1 un 6 hex 2 bi 7 sept 3 tri 8 oct 4 quad 9 enn 因此,对于这种高尔夫运动,您的代码需要为给定的正整数生成元素名称及其符号。因此,如果给定的代码为137,则应将其打印到stdout或同时返回untriseptium和Uts。它的有效期至少应为118到558。如果不增加代码长度,则更高的值是有效的。 显示该方法的Python示例: def elename(n): '''Return name and symbol of new element for given element number.''' prefixes=['nil','un','bi','tri','quad','pent','hex','sept','oct','enn'] nmeFixes, symFixes = [], [] while n: # each digit of element …

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.