Questions tagged «string»

通过使用和操纵琴弦来解决特定问题的竞赛。

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

30
输出字母,字母或仅一个字符
挑战很简单: 编写一个接受输入的函数或程序,x如果x是小写字母的一部分,则输出小写字母;如果x是大写字母的一部分,则输出大写字母,并输出x不属于大写字母的一部分。 规则: 输入可以是函数参数或来自STDIN 输入将是从32到126(空格到波浪号)的任何可打印ASCII字符。 输入的内容可以在引号'x'或内"x",但请记住'和"是有效的输入,应予以支持。 输入的内容可以是字母中的任何字母,即您不能假定它是a或A。 输出应仅是字母之一或单个符号,但结尾的换行符可以。 字母表中的字母不应由空格,逗号或其他任何字符分隔。 一些例子: F ABCDEFGHIJKLMNOPQRSTUVWXYZ z abcdefghijklmnopqrstuvwxyz " " <- Input: Space <- Output: Space 以字节为单位的最短代码获胜。 可选,但不胜感激:如果您的语言有在线口译员,请同时发布链接,以便其他人可以轻松对其进行测试。 排行榜 这篇文章底部的Stack Snippet会根据答案a)生成目录,a)作为每种语言最短解决方案的列表,b)作为整体排行榜。 为确保您的答案显示出来,请使用以下Markdown模板以标题开头。 ## Language Name, N bytes N您提交的文件大小在哪里。如果您提高了分数,则可以通过打败旧分数来保持标题。例如: ## Ruby, <s>104</s> <s>101</s> 96 bytes 如果要在标头中包含多个数字(例如,因为您的分数是两个文件的总和,或者您想单独列出解释器标志罚分),请确保实际分数是标头中的最后一个数字: ## Perl, 43 + 2 (-p flag) = 45 …

6
语言设计:二维模式匹配
这是每两周挑战#6。主题:语言设计 这个挑战有一个聊天室。如果您想讨论想法,请加入我们! 现在换个完全不同的东西... 这两个星期,我们想尝试一种新型的挑战。在这个挑战中,您将设计一种语言!模式匹配是编程中一个非常普遍的问题,并且通常对于代码高尔夫非常有用。例如,可以使用正则表达式来检测文本行中的模式。但是,没有任何成熟的方法来描述和检测二维模式。 挑战 您将要设计一种模式匹配语言,该语言允许在文本块中描述二维模式。该运作模式你的语言将类似于正则表达式(虽然你的语言并不一定有什么共同点与正则表达式,否则): 作为输入,您将收到一个矩形文本块。您可以假设文本仅由可打印的ASCII字符(0x20至0x7E)以及换行符(0x0A)组成,以分隔网格的行。 如果根据模式说明将匹配项找到为该文本块的任何子集,则应返回或打印该匹配项。如果匹配项可以是非矩形的,则应将其填充到具有某些保留字符的矩形区域。如果存在多个有效的匹配项,则可以决定如何选择返回的匹配项(最大,最小,第一个等)。 对于某些应用程序,如果您的实现可以返回匹配项的位置而不是匹配项本身,则可能会很有用,但这不是必需的。 至少,您的语言应该能够将模式匹配为其输入的连续矩形子区域。 您的答案应包含: 一个描述语言。 一个有效的实现。它可以是程序,也可以是您选择的语言的一组功能/类。 您应该通过显示语言来解决下面提供的示例来演示您的语言。您的语言不一定必须能够匹配所有语言,但是您必须至少能够匹配其中8种语言。如果您的语言可以做一些我们没想到的花哨的事情,请随时将其包括在内。 如果您的答案是建立在现有想法的基础上的,那很好,但是请在适当的时候给予感谢。 扩展名 上面描述了有效提交必须满足的最低要求。但是,多种概括可以使这种模式匹配语言更加有用,包括但不限于: 能够将样式锚定到一个或多个边缘,以便可以检查整个输入区域是否具有特定样式。 产生所有匹配而不是一个。您可以选择重叠匹配的语义。 以非矩形文字为输入。 允许模式指定非矩形匹配。在这种情况下,应将输出填充到带有某些保留字符的矩形中。 允许图案指定带孔的匹配。 允许非连续匹配,例如两个字符以一定的偏移量出现。 轻松指定旋转和反射。 可选地,将输入循环地视为圆柱或圆环,以使相对的边缘被视为相邻。 计分 这项挑战的主要目标是产生一种有效的2D模式匹配语言,该语言将来可能会使用。这样,诸如“用于解决示例的最短组合长度”之类的评分系统将导致以牺牲通用性为代价来对某些功能进行硬编码。因此,我们认为最好将这项挑战作为人气竞赛。净投票最多的提交者获胜。尽管我们不能强迫人们投票,但以下是一些有关选民理想选择的准则: 表现力。语言可以解决各种问题,甚至超出本问题中提供的示例吗?它是否支持任何建议的扩展? 可读性。该符号的直观性(至少对于了解基本语法的人而言)? 高尔夫度。这仍然是CodeGolf.SE。对于本站点而言,拥有一种只需很少代码即可描述模式的匹配语言当然会很好。 示例问题 以下堆栈片段显示了16种示例问题,二维模式匹配语言可以解决这些问题。每个示例都包含一个简短的问题描述,然后通常后面跟一个可以找到匹配项的输入示例和一个找不到匹配项的示例(如果适用)。 如上所述,您的语言仅需要能够解决其中的8个问题。最重要的是可选的,但是当然应该增加您获得的投票数。 显示代码段 body{font-family:'Helvetica Neue',Arial,sans-serif;color:#444;font-size:13px;width:500px;line-height:1.3}h3{font-size:16px!important;line-height:1.2em!important;margin-bottom:1.2em}code{white-space:pre-wrap;padding:1px 5px;font-family:'Droid Sans Mono',Consolas,Menlo,Monaco,Lucida Console,Liberation Mono,DejaVu Sans Mono,Bitstream Vera Sans Mono,Courier New,monospace,serif;color:#222;background:#eee}p code{padding:1px 5px}pre{overflow:auto;width:auto;width:480px !ie7;max-height:600px;font-family:'Droid …

30
脱绳
现在我们已经知道如何从其空格中删除字符串。 但是,作为适当的先生/女士,我们宁愿脱衣服。 脱绳与剥线相同,只是更细腻。与其一次删除所有前导和尾随空格,不如一一删除它们。我们也交替领先和落后,以免烫伤步骤之间。 以" codegolf "(五个前导和尾随空格)开头的示例: codegolf codegolf codegolf codegolf codegolf codegolf codegolf codegolf codegolf codegolf codegolf 首先输出字符串不变。然后,输出每个步骤。首先删除前导空格(如果适用-参见规则2)。 输入可能具有不同数量的前导和尾随空格。如果一侧空间不足,请继续给另一侧脱衣服,直到弦线裸露为止。 输入可能没有前导空格或尾随空格。如果是这样,请原样输出。 使用PPCG的默认I / O方法。PPCG默认漏洞是禁止的。 可以确定在空输入或仅包含空格的输入上的未定义行为。 您可以假设该字符串将仅包含ASCII可打印空间(0x20到0x7E)中的字符。 示例-用点替换空格.以提高可读性: 4 leading spaces, 5 trailing: "....Yes, Sir!....." ....Yes, Sir!..... ...Yes, Sir!..... ...Yes, Sir!.... ..Yes, Sir!.... ..Yes, Sir!... .Yes, Sir!... .Yes, Sir!.. Yes, Sir!.. Yes, …
48 code-golf  string 

10
星期一迷你高尔夫#6:Meeesesessss upp teeexexextext
星期一迷你高尔夫:每周一发布(希望!)一系列简短的代码高尔夫挑战赛。 真实故事1:前几天,当我有想法去访问我通常在PC上用于测试JavaScript 的页面时,我正在平板电脑上玩耍。页面加载后,我输入了以下简单程序: alert("Hello!") 然后,我继续按Execute按钮,当它告诉我输入的代码无效时,我感到很惊讶。我再次查看了文本框,并看到了以下内容: alllelelerlerlertlert("Heeelelellellelloello!") 哇??? 那不是我输入的!那这里怎么了 为了弄清楚,我输入了两个简单的行: abcdefg 0123456 结果是: abbbcbcbcdbcdbcdebcdebcdefbcdefbcdefgbcdefg 0112123123412345123456 到目前为止,我仍然不知道字母发生了什么,但是数字似乎更简单,所以我仔细看了一下。事实证明,该网页只是输入第一个字符,然后在每次按下新的字符时重复字符串中的所有其余字符: 0112123123412345123456 0 1 12 123 1234 12345 123456 但是字母部分呢?经过一分钟的思考,我意识到它是相同的,但是没有重复每个小节一次,而是重复了两次: abbbcbcbcdbcdbcdebcdebcdefbcdefbcdefgbcdefg a bb bcbc bcdbcd bcdebcde bcdefbcdef bcdefgbcdefg 两种作品的结合以及这些技术的结合: abc123z abbbcbcbc1bc12bc123bc123zbc123z a bb bcbc bc1 bc12 bc123 bc123zbc123z 无论是什么故障引起的,这似乎都在标点和空格处重置,因此abc def变为abbbcbc deeefef。 在这一点上,我全神贯注于将其弄清楚并将其变成一个有趣的挑战,以至于我忘记了为什么我一直在那儿。(不过,我确实弄清楚了如何正常键入:在每个字符后按空格键。这很繁琐,但是您必须执行操作。) 挑战 挑战的目标是编写一个程序或函数,该程序或函数接受要处理的文本,进行上面列出的更改,然后输出/返回结果。 细节 输入将仅包含可打印的ASCII,并且没有制表符或换行符。 …
48 code-golf  string 

30
交换字母
在此挑战中,您将“反转”字母或a-z与交换z-a。这通常称为Atbash密码。 因为此转换使输出看起来像某种外语,所以您的代码将需要尽可能短。 例子 abcdefghijklmnopqrstuvwxyz zyxwvutsrqponmlkjihgfedcba Programming Puzzles & Code Golf Kiltiznnrmt Kfaaovh & Xlwv Tlou Hello, World! Svool, Dliow! 规格 输入可能包含多行,并且只能是ASCII码 没有 额外的空格应该被添加到输出 案件必须保留 排行榜 显示代码段 var QUESTION_ID=68504,OVERRIDE_USER=40695;function answersUrl(e){return"https://api.stackexchange.com/2.2/questions/"+QUESTION_ID+"/answers?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+ANSWER_FILTER}function commentUrl(e,s){return"https://api.stackexchange.com/2.2/answers/"+s.join(";")+"/comments?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+COMMENT_FILTER}function getAnswers(){jQuery.ajax({url:answersUrl(answer_page++),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){answers.push.apply(answers,e.items),answers_hash=[],answer_ids=[],e.items.forEach(function(e){e.comments=[];var s=+e.share_link.match(/\d+/);answer_ids.push(s),answers_hash[s]=e}),e.has_more||(more_answers=!1),comment_page=1,getComments()}})}function getComments(){jQuery.ajax({url:commentUrl(comment_page++,answer_ids),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){e.items.forEach(function(e){e.owner.user_id===OVERRIDE_USER&&answers_hash[e.post_id].comments.push(e)}),e.has_more?getComments():more_answers?getAnswers():process()}})}function getAuthorName(e){return e.owner.display_name}function process(){var e=[];answers.forEach(function(s){var r=s.body;s.comments.forEach(function(e){OVERRIDE_REG.test(e.body)&&(r="<h1>"+e.body.replace(OVERRIDE_REG,"")+"</h1>")});var a=r.match(SCORE_REG);a&&e.push({user:getAuthorName(s),size:+a[2],language:a[1],link:s.share_link})}),e.sort(function(e,s){var r=e.size,a=s.size;return r-a});var s={},r=1,a=null,n=1;e.forEach(function(e){e.size!=a&&(n=r),a=e.size,++r;var t=jQuery("#answer-template").html();t=t.replace("{{PLACE}}",n+".").replace("{{NAME}}",e.user).replace("{{LANGUAGE}}",e.language).replace("{{SIZE}}",e.size).replace("{{LINK}}",e.link),t=jQuery(t),jQuery("#answers").append(t);var o=e.language;/<a/.test(o)&&(o=jQuery(o).text()),s[o]=s[o]||{lang:e.language,user:e.user,size:e.size,link:e.link}});var t=[];for(var o in s)s.hasOwnProperty(o)&&t.push(s[o]);t.sort(function(e,s){return e.lang>s.lang?1:e.lang<s.lang?-1:0});for(var c=0;c<t.length;++c){var …
48 code-golf  string 

6
对字符串加香
霍多尔(Hodor)在《权力的游戏》(Game of Thrones)节目中是个头脑笨拙但讨人喜欢的角色(当然,他也在书中)。他曾经说过的唯一一句话是“霍多尔”。 令人惊讶的是,尽管词汇量不多,但霍多尔总是用完整的句子说出正确的大写和标点符号,并且实际上传达了含义。 Hodor能够表达所有128个ASCII字符,尽管他要用一个完整的句子说每个字符。每个字符都有一个准确的句子表示形式。通过将字符串中的所有字符翻译成它们的Hodor句子等效项,然后将所有句子连接起来,对ASCII字符串进行Hodorized。由于所有字符都映射为准确的句子,因此所有ASCII字符串都具有单个唯一的Hodorized表示形式。 加香字符 霍多尔通过对代表字符的句子使用4种不同的标点符号,将他的128个可表达字符分为4组,每组32个。 句子以...结尾 .如果ASCII字符代码mod 4为0。 .[newline][newline] (对于新段落),如果代码mod 4为1。 ? 如果代码mod 4为2。 ! 如果代码mod 4为3。 例如,的ASCII字符代码为b98,而98的mod 4为2,因此Hodor的句子b肯定以结尾?。 该句子的内容是仅包含单词“ hodor”的32个不同的字符串之一。特定标点类型的32个字符中的每个字符都映射到不同的句子内容字符串。因此,使用32个句子内容字符串和4种标点符号类型,所有128个ASCII字符都可以表示为不同的Hodor句子。 要确定具有ASCII码C的字符的句子内容,请计算(floor(C / 4) + 16) mod 32;该列表中该行上冒号之后的所有内容均为句子内容: 0:Hodor 1:HODOR 2:Hodor hodor 3:Hodor, hodor 4:Hodor hodor hodor 5:Hodor, hodor hodor 6:Hodor hodor hodor hodor 7:Hodor hodor, hodor hodor …
48 code-golf  string 

7
避江
背景 在排版中,河流是一块文本中的视觉间隙,这是由于空间的同时对齐而发生的。这些特别令人讨厌,因为您的大脑似乎在周围视力中更容易拾取它们,从而不断分散您的视线。 例如,以下面的文本块为例,这些行的折断使得行宽不超过82个字符: Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eismod tempor incididunt ut labore et dolore maga aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum …

25
高尔夫十项全能的第一个代码[关闭]
任务 所有竞争对手都试图解决以下10个任务列表: 数学 从输入中读取正整数n并返回前n个非负整数的立方和。 对于输入1,应该返回0。 当且仅当n是梅森素数时,才从输入读取正整数n并返回真实值。 从输入读取n个整数的非空列表,并返回它们的中值。 如果n为偶数,则使用两个中间值中的较小者。 例如,的中位数[1 4 3 2]为2。 从输入中读取整数(正,负或0)或以10为底或一进制的字符串表示形式,并以negabinary返回其数字,且不带前导零(输入0除外)。 可以用任何方便的方式(数字,数组,字符串等)格式化输出。 串 返回pneumonoultramicroscopicsilicovolcanoconiosis。 检查当前日期,并Happy New Year!根据公历返回合适的日期。 伪随机地从Unicode块CJK Unified Ideographs Extension-A(U + 3400 – U + 4DB5)中选择64个唯一分配的代码点,然后返回相应字符的字符串。 所有可能的字符串应具有相同的被选择概率。 当且仅当第一个字符串的字符形成第二个字符串的子序列时,才从输入中读取两个可打印的ASCII字符串,并返回真实值。 例如,abc,axbxc应该返回truthy和bac,axbxc应该返回falsy。 数组操作 从输入中读取一个多维的矩形整数数组和一个整数n,并返回修改后的数组,其中所有整数均乘以n。 艺术 从输入中读取一个非负整数n,并返回n个火车货车的链,如下所示。 n = 3的示例输出: ______ ______ ______ | | | | | | ()--() ~ …

30
面子McFaceface
任何人都记得博伊吗? 您完全可以说出一句老话吧? 编写一个将字符串转换为Somethingy McSomethingface的函数。 它应该接受一个字符串作为输入。忽略输入的大小写。 如果单词以“ y”结尾,则函数不应在第一个实例中添加额外的“ y”,而应在第二个实例中将其删除。 如果单词以“ ey”结尾,则在第一个实例中不应添加其他“ y”,而在第二个实例中应将两者都删除。 输出应仅在首字符中包含大写字母,“ Mc”中的“ M”以及“ Mc”之后的第一个字符。 它只需要使用3个或更多字符的字符串即可。 例子: boat => Boaty McBoatface Face => Facey McFaceface DOG => Dogy McDogface Family => Family McFamilface Lady => Lady McLadface Donkey => Donkey McDonkface Player => Playery McPlayerface yyy => Yyy McYyface DJ …
47 code-golf  string 

29
转到第N页
通常需要建立一个页面选择界面。通常看起来像这样: prev 1 ... 3 4 [5] 6 7 ... 173 next 这意味着总共有173页,您目前位于第5页。 这项挑战要求您将页面总数和当前页面数作为输入,并输出一个字符串(或数组)以“显示”页面选择器。 输入项 2个正整数 当前页码 页数 保证1 <=当前<=总计。 输出量 输出代表页面选择器的ui的字符串或数组。 如果以字符串形式输出,则每页之间应使用一个空格(U + 0020)。 如果以数组形式输出,则在将每个项目转换为字符串并以单个空格将它们连接起来之后,该数组应产生与字符串相同的结果。 三个点(...)对于数组输出不是可选的。 细节 如果current == 1,则不会输出“ prev”,否则,将首先输出“ prev”。 如果current == total,则不输出“ next”,否则输出“ next”。 应该始终输出首页(1)和末页(总计)。 只要在[1..total]范围内,就应输出当前页面,(当前-1)页面,(当前-2)页面,(当前+ 1)页面,(当前+ 2)页面。 不得输出其他页码。 输出的页面应按升序排序。 输出中不应包含重复的页码。 当前页面应以一对括起来突出显示[]。 如果邻居之间有空隙,...则应插入三个点()。 测试用例 Current Total …
47 code-golf  string 

24
降级为回文
给定一个string s,返回可以删除以创建回文的最小连续子字符串。 例子: 800233008 -> 2 racecarFOOL -> FOOL abcdedcba -> (empty string) ngryL Myrgn -> "L " (or " M") 123456789 -> 12345678 (or 23456789) aabcdbaa -> c (or d) [[]] -> [[ (or ]]) a -> (empty string) 用户的测试用例建议(如果您未列出边缘用例,请发表评论): aabaab -> b | Suggested by Zgarb, some returned …

30
贝纳迪诺确定不变的美元单词
定义 美元单词是一个单词,其中每个字母都给出一个分值(从a = 1到z = 26),并将这些字母相加,结果为100。这是CodeReview的示例,这是一个列表我在网上找到的美元词汇 输入项 输入将以一种语言的文本数据类型(允许使用数组)从z字母开始。您无需考虑任何其他输入-不会有空格,撇号或连字符。您可以采用小写,大写或组合形式。尾随换行符是允许的。 输出量 如果输入是美元单词,则输出真实值,否则输入错误值。 测试用例 真相: buzzy boycott identifies adiabatically ttttt 虚假: zzz zzzzzzz abcdefghiljjjzz tttt basic 这是代码高尔夫球,因此最短答案以字节为单位!适用标准漏洞和规则。领带去了第一张海报。
47 code-golf  string 

30
每日#7高尔夫:一个明显随机的角色
关于系列 这是“每日随机高尔夫”系列的嘉宾条目。 首先,您可以像对待其他任何代码高尔夫挑战赛一样对待它,并回答它而不必担心系列赛。但是,在所有挑战中都有排行榜。您可以在第一篇文章中找到排行榜以及有关该系列的更多信息。 输入项 没有输入。 输出量 单个字母(不区分大小写),以及可选的尾随换行符。每个字母的选择概率必须为非零,并且所有26个概率必须是不同的。要消除所有歧义,请执行以下操作:Distinct表示不得存在两个彼此相等的概率。 计分 这是代码高尔夫。以字节为单位的最短代码获胜。 有效条目是一个完整的程序或函数,其终止的可能性为零。 字母 为避免混淆,要使用的特定字母是拉丁字母: 要么 ABCDEFGHIJKLMNOPQRSTUVWXYZ 要么 abcdefghijklmnopqrstuvwxyz 您可以选择输出大写或小写。或者,如果有帮助,您可以选择在不同的运行中输出不同的案例。给定字母的概率是在两种情况下(大写或小写)该字母出现的概率。 说明 由于从输出中根本看不出来,因此请对如何获得26种不同的概率作一个清晰的解释。 排行榜 (从这里开始) 显示代码段 var QUESTION_ID=89621,OVERRIDE_USER=20283;function answersUrl(e){return"https://api.stackexchange.com/2.2/questions/"+QUESTION_ID+"/answers?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+ANSWER_FILTER}function commentUrl(e,s){return"https://api.stackexchange.com/2.2/answers/"+s.join(";")+"/comments?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+COMMENT_FILTER}function getAnswers(){jQuery.ajax({url:answersUrl(answer_page++),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){answers.push.apply(answers,e.items),answers_hash=[],answer_ids=[],e.items.forEach(function(e){e.comments=[];var s=+e.share_link.match(/\d+/);answer_ids.push(s),answers_hash[s]=e}),e.has_more||(more_answers=!1),comment_page=1,getComments()}})}function getComments(){jQuery.ajax({url:commentUrl(comment_page++,answer_ids),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){e.items.forEach(function(e){e.owner.user_id===OVERRIDE_USER&&answers_hash[e.post_id].comments.push(e)}),e.has_more?getComments():more_answers?getAnswers():process()}})}function getAuthorName(e){return e.owner.display_name}function process(){var e=[];answers.forEach(function(s){var r=s.body;s.comments.forEach(function(e){OVERRIDE_REG.test(e.body)&&(r="<h1>"+e.body.replace(OVERRIDE_REG,"")+"</h1>")});var a=r.match(SCORE_REG);a&&e.push({user:getAuthorName(s),size:+a[2],language:a[1],link:s.share_link})}),e.sort(function(e,s){var r=e.size,a=s.size;return r-a});var s={},r=1,a=null,n=1;e.forEach(function(e){e.size!=a&&(n=r),a=e.size,++r;var t=jQuery("#answer-template").html();t=t.replace("{{PLACE}}",n+".").replace("{{NAME}}",e.user).replace("{{LANGUAGE}}",e.language).replace("{{SIZE}}",e.size).replace("{{LINK}}",e.link),t=jQuery(t),jQuery("#answers").append(t);var o=e.language;/<a/.test(o)&&(o=jQuery(o).text()),s[o]=s[o]||{lang:e.language,user:e.user,size:e.size,link:e.link}});var t=[];for(var o in s)s.hasOwnProperty(o)&&t.push(s[o]);t.sort(function(e,s){return e.lang>s.lang?1:e.lang<s.lang?-1:0});for(var c=0;c<t.length;++c){var i=jQuery("#language-template").html(),o=t[c];i=i.replace("{{LANGUAGE}}",o.lang).replace("{{NAME}}",o.user).replace("{{SIZE}}",o.size).replace("{{LINK}}",o.link),i=jQuery(i),jQuery("#languages").append(i)}}var ANSWER_FILTER="!t)IWYnsLAZle2tQ3KqrVveCRJfxcRLe",COMMENT_FILTER="!)Q2B_A2kjfAiU78X(md6BoYk",answers=[],answers_hash,answer_ids,answer_page=1,more_answers=!0,comment_page;getAnswers();var SCORE_REG=/<h\d>\s*([^\n,]*[^\s,]),.*?(\d+)(?=[^\n\d<>]*(?:<(?:s>[^\n<>]*<\/s>|[^\n<>]+>)[^\n\d<>]*)*<\/h\d>)/,OVERRIDE_REG=/^Override\s*header:\s*/i; body{text-align:left!important}#answer-list,#language-list{padding:10px;width:290px;float:left}table …

17
修复Froot Loop项链
假设您要在项链,手链,鞋带或其他物品上串一串Froot Loops。有6层环的颜色:- [R编,ö范围,ÿ ellow,克颖,b略,和p urple。您希望您的线束从最左边的红色开始,以彩虹顺序向右循环,以紫色结束。就是说,您想要这样做,以便您的链可以由roygbp重复多次(可能为0)的字符串表示。 问题是,您已经串起了循环,没有按任何特定的顺序进行。您应该吃还是不吃哪个循环,以便最大程度地增加从左到右的正确彩虹循环次数,第一个循环为红色,最后一个循环为紫色? 编写一个程序或函数,该程序或函数接受任意字符串,roygbp并打印或返回相同长度的字符串,e以代替要吃的循环和不吃东西n的循环。 例如,如果您的Froot Loop链看起来像 输入将是 gorboypbgbopyroybbbogppbporyoygbpr 从左到右,我们可以找到3个完整的roygbp彩虹序列,但是有些循环需要被消除。因此输出将是 eenenneennenennneeeeneennenennnnne 产生一个完美的3周期链: 如果输入中没有完整的彩虹周期,则输出将全部为e,并且线束最终无环。例如输入proygb有输出eeeeee。相反,proygbp具有输出ennnnnn。 您可以假设所有输入链都至少有一个循环。 以字节为单位的最短代码获胜。
47 code-golf  string 

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.