Questions tagged «code-golf»

Code-golf是在最小的源代码字节中解决特定问题的竞赛。

25
适用于Internet的更好的十六进制颜色代码
十六进制三胞胎(例如#ffffff(白色)或#3764ef(蓝色))通常用于表示RGB颜色。它们由#六个十六进制数字(0-f)或有时由三个数字组成,其中通过将每个数字加倍获得真实色彩。例如,#fffis #ffffff和#1a8is #11aa88。 可悲的是,这三个数字速记是互联网有可能的报价,golfiest 直到现在。 编写一个包含1到7个字符的字符串的程序或函数: 第一个字符将始终为#。 其他字符将始终为十六进制数字:0123456789abcdef。 输入是十六进制三元组的简写形式(如果给出7个字符,则为完整形式)。您需要输出完整的十六进制三元组,以根据以下模式扩展输入速记: Input -> Output # -> #000000 (black) #U -> #UUUUUU #UV -> #UVUVUV #UVW -> #UUVVWW (usual 3-digit shorthand) #UVWX -> #UXVXWX #UVWXY -> #UVWXYY #UVWXYZ -> #UVWXYZ (not shorthand) 每一个U,V,W,X,Y,和Z可以是任何十六进制数字。输出始终为7个字符。 例如: Input -> Output # -> #000000 #0 -> #000000 …

30
打一个超越性的数字
定义 代数数是具有整数系数的非零多项式的零。例如,的平方根2是代数,因为它是的零x^2 - 2。 超越数是不是代数的实数。 任务 您将选择一个先验数字。 然后,编写一个使用正整数的程序/函数,并在所选先验数字的小数点后n输出第- n个十进制数字。您必须在提交的文件中清楚说明使用了哪个先验编号。 您可以使用0索引或1索引。 例 e^2=7.389056098...是一个先验数字。对于此号码: n output 1 3 2 8 3 9 4 0 5 5 6 6 7 0 8 9 9 8 ... 请注意,首字母缩写7被忽略。 如前所述,您可以选择其他先验数字。 计分 这是代码高尔夫球。最低得分(以字节为单位)获胜。
46 code-golf  math  number 

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 …

23
破解选举
您是专业的黑客,您的老板刚刚下令您帮助候选人赢得即将举行的选举。您的任务是更改投票机数据以提高候选人的成绩。 投票机将投票结果存储为两个整数:候选人v1的投票数()和对手的投票数(v2)。 经过数周的研究,您已经在系统中发现一个安全漏洞,您可以将a的值增加v1一个整数x,而将a的值减少v2一个same x。但是有一个约束,您必须保持安全性哈希码不变: 安全哈希码: (v1 + v2*2) modulo 7 另外,的值x必须最小,这样您的更改才能被忽略。 你的程序应该接受作为输入v1和v2; 它应该输出的最佳值,x所以v1>v2。 在某些情况下,您无法破解结果。您不必处理它们(这可能会导致老板遇到问题,但这是另一回事了)。 测试用例 100,123 --> 14 47,23 --> 0 40,80 --> 21 62,62 --> 7 1134,2145 --> 511

27
除数的天际线
对于任何正整数k,令d(k)表示的除数k。例如,d(6)是4,因为6具有4除数(即1,2,3,6)。 给定一个正整数N,使用固定的字符,使得“建筑物”位于水平位置的高度显示ASCII技术中的“地平线” k是d(k)为k = 1, ..., N。请参阅下面的测试案例。 规则 可以一致地使用任何非空白字符,不一定非要#如测试用例所示。 该算法在理论上应该适用于任意高N。实际上,如果程序受时间,内存,数据类型大小或屏幕大小的限制,这是可以接受的。 允许水平或垂直前导或尾随空格或换行符。 输入和输出可以通过任何合理的方式进行。 允许使用任何编程语言编写程序或功能。禁止出现标准漏洞。 以字节为单位的最短代码获胜。 测试用例 N = 10: # # # # # ### ######### ########## N = 50: # # # # # # # # # # # # # # # # # # # # # …


30
对终端中的文本进行动画处理
对终端中的文本进行动画处理 目标 目标是在输出中对字符串“ Hello world”进行“动画处理”,以便每个字符彼此大写。 每个字母都大写后,您的程序可以退出。 例如; # Iteration 1 Hello world # Iteration 2 hEllo world # Iteration 3 heLlo world # Iteration 4 helLo world # Iteration 5 hellO world # Iteration 6 (note: it should capitilize the space char (ie: a break between iteration 5 and iteration …

23
终端中的大海
背景 北半球的夏天已经过去了,我们很多人想念阳光,海滩,海浪……这一挑战的目的是通过使他们联想起大海来振作起来。 挑战 这是大海: ** ** ** ** ** **** **** **** **** **** ***** ***** ***** ***** ***** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ****** ****** ****** ****** **** 海洋是这种波形的5倍: ** **** ***** ** …

16
绘制文本的对角线
给定单词列表的输入,输出单词,其字母对角排列: p r o p g u r z a a z m n l m d e i c s n o g d g e o l f (以上应该是输入的输出programming puzzles and code golf。) 准确地说,每个单词都从第一列开始,在前一个单词的下方三行,并且每个连续的字母向右移动一列,向下移动一列。 输入可以提供为单个字符串,由精确的一个空格分隔,也可以提供单词的列表/数组。单词将仅由小写字母组成a-z,并且始终至少一个字符长。 输出可以是单个字符串,行的数组或字符数组的数组。除单个尾随换行符外,不允许前导或尾随空格。 进一步的测试案例: a bcd efgh i j a b c d e f …
46 code-golf  string 

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. (基于许多美国孩子学习的字母歌曲,尽管对其进行了编辑以提高可压缩性,但它们仍有助于记忆该字母。) 输出必须看起来完全相同上述(再次,不区分大小写),但也可以包含在每一行和/或后换行符尾随空格。注意最后的句点。 这是代码高尔夫球,因此以字节为单位的最短代码获胜。

19
吃豆人可以吃这串吗?
在游戏的街机版本中,吃豆人吃豆点。但是,在这个挑战中,他渴望字符串中的字母数字字符和标点符号。 您的任务是创建一个函数,该函数为吃豆人提供一个字符串,评估他是否可以吃它,然后返回其中包含吃豆人位置的字符串。 吃豆人(<)从左到右吃字符,每个字符在走时都留下下划线或空格,他的目标是从第一个位置1到最后一个位置+1: 1. <Pac 2. _<ac 3. __<c 4. ___< 但是,如果吃豆人的天敌幽灵将阻止他,如果他遇到单词“ GHOST”(不区分大小写)中的一个字母。您的函数在遇到ghost字符时应返回吃豆人所在位置的字符串: 1. <No! 2. _<o! 唯一可以击败幽灵的东西就是力量药丸。如果吃豆人在遇到鬼魂之前到达单词“ PELLET”(也不区分大小写)中的字母,他将吃掉鬼魂并继续移动,该小球将被耗尽。强力药丸可以堆叠(即,ppgg两个鬼魂都会被吃掉)。所述Ť字符存在既作为重影和小球,因此它可以忽略不计(如任何其他信处理,等a)。 1. <Pop 2. _<op 3. __<p 4. ___< 为了进一步说明,在字符串“吃豆人在这里输”中,发生以下操作: P <P, +1 Pellet (1 pellet) a <a c <c - <- M <M a <a n <n <[space] l <l, +1 …

15
电子在电线上弹跳
想象一下有n空间的“电线” 。进一步想象一下,该导线中存在“电子”。这些电子仅生存一个时间单位。导线中恰好与一个电子相邻的任何空间都将成为电子。在“生活游戏”术语中,这是B1/S。 例如,这是长度为10且周期为62的导线。 规则 输入,n是一个正整数。 输出必须是一个整数,表示长度为n的导线的周期。 起始状态是导线一端的单个电子。 该时间段不必包括开始状态。有些长度永远不会返回到起始状态,但是它们都是周期性的。 静态导线(即没有电子的导线)的周期为1。 边界条件不是周期性的。也就是说,电线绝不是环形的。 测试用例 特别感谢orlp制作了此列表。(我已经验证到n = 27。) 1 1 2 2 3 1 4 6 5 4 6 14 7 1 8 14 9 12 10 62 11 8 12 126 13 28 14 30 15 1 16 30 17 28 18 1022 …

16
旋转点
引言 2×n布尔矩阵可以表示为四个字符的字符串. ':。该字符串有一个“上排”和一个“下排”,点代表1,空白代表0。例如2×6矩阵 1 0 1 0 0 1 0 0 0 1 0 1 可以表示为' '. :。您的任务是采用这种“压缩形式”的矩阵,并像传送带一样将其入口顺时针旋转一步。 输入项 您的输入是字符上的单个字符串. ':。它的长度保证至少为2。 输出量 您的输出应为输入字符串,但每个点均沿顺时针方向旋转一步。更明确地说,除了最右边的行向下移动之外,最上面一行的点向右多一个位置。除最左端的点向上移动外,下一行的点向左移动一级。特别是,输出字符串必须与原始字符串具有相同的长度,并且空格很重要。 例 考虑输入字符串:..:'.,它对应于2×6矩阵 1 0 0 1 1 0 1 1 1 1 0 1 该矩阵的旋转版本为 1 1 0 0 1 1 1 1 1 0 1 0 …
46 code-golf  string 

26
翻译oOo代码
给定以oOo CODE编写的程序的输入,输出它表示的BF代码。 这是oOo CODE的工作方式的简短描述: 首先,所有非字母字符都将被删除(所有不在此范围内的字符 A-Za-z)。 例如,使用该程序PROgRam reVERsES giVeN iNPut sEqUENcE(esolangs Wiki页面上给出的示例完全可以实现您的期望)。第一步之后,我们现在有了 PROgRamreVERsESgiVeNiNPutsEqUENcE。 接下来,将所有剩余字符分成3组。现在有了 PRO,gRa,mre,VER,sES,giV,eNi,NPu,tsE,qUE,NcE。如果尾部有1个或2个字符,则将其丢弃。 根据下表将每组3个字母转换为BF命令: ooo > ooO < oOo [ oOO ] Ooo - OoO + OOo . OOO , 也就是说,如果组中的第一个字母是小写字母,第二个字母是大写字母,第三个字母是小写字母,它将转换为command [。 在我们的示例中,该程序最终成为BF程序,[>,]<[.<]+,该程序的确撤消了其输入。 因为这是code-golf,所以以字节为单位的最短代码将获胜。 测试用例: <empty string> -> <empty string> A -> <empty string> Ab -> <empty string> …

17
果冻高尔夫技巧
果冻是我们自己的丹尼斯(Dennis)提出的一种针对高尔夫的隐性编程语言。通过使用自己的代码页和强大的链接系统来简洁地表达程序,它在这里的答案越来越频繁地出现,击败了其他高尔夫类语言,例如Pyth和CJam 。 让我们收集一些在果冻打高尔夫球的有用技巧。(一如既往,请给每个答案一个提示!)
46 code-golf  tips  jelly 

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.