Questions tagged «string»

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

30
聪明人的海市age楼
从前,我在阅读有关Quora的问题/答案 真的有没有计算机科学学位的程序员无法通过FizzBu​​zz测试 此代码是显而易见的答案 for i in range(1, 100): if i % 3 == 0 and i % 5 == 0: print "FizzBuzz" elif i % 3 == 0: print "Fizz" elif i % 5 == 0: print "Buzz" else: print i 当然,FizzBu​​zz已经被打死了,但这并不是这个问题的实质。您会在评论中看到有人提到该答案很不错,因为很容易添加额外条件,例如将“ Jazz”打印为4的倍数。(我不同意。扩展此方案需要O(2 ** n )代码行。) 您的挑战是编写由同行判断的最漂亮的FizzJazzBuzz版本。 选民需要考虑的一些事项: 干 除法/模运算的效率 …
29 popularity-contest  code-challenge  word  popularity-contest  string  grid  language-design  code-golf  source-layout  math  fastest-algorithm  assembly  code-golf  json  code-golf  arithmetic  array-manipulation  code-golf  ascii-art  code-golf  crossword  code-golf  string  restricted-complexity  code-golf  ascii-art  kolmogorov-complexity  code-golf  string  decision-problem  balanced-string  syntax  code-golf  grid  puzzle-solver  hexagonal-grid  code-golf  math  number  sequence  code-golf  string  decision-problem  code-golf  cryptography  king-of-the-hill  code-challenge  fastest-code  code-golf  number  code-golf  code-golf  string  code-golf  cryptography  king-of-the-hill  java  code-golf  number-theory  base-conversion  code-golf  code-golf  array-manipulation  code-golf  array-manipulation  sorting  code-challenge  restricted-source  quine  code-golf  tips  python  king-of-the-hill  code-golf  source-layout  fractal  code-golf  tips  game  king-of-the-hill  path-finding  grid  code-golf  kolmogorov-complexity  natural-language  code-golf  tips  python  code-golf  number  arithmetic  sequence  array-manipulation  code-golf  number  combinatorics  random  integer-partitions  code-golf  string  code-golf  vim  comment  code-golf  combinatorics  counting  code-challenge  rosetta-stone  code-golf  combinatorics  sequence  subsequence  code-golf  code-challenge  restricted-source  primes  printable-ascii  popularity-contest  graphical-output  image-processing 

13
有多少个吉米人可以容纳?
在这个简单而有趣的挑战中,您被要求确定Jimmy是否会掉下他们的平台。吉米有三个身体部位/,o以及\安排这样 /o\ 平台用表示-。如果Jimmy有两个或多个不位于平台正上方的身体部位,他们将掉下平台。 一些例子: /o\ - ------- 吉米会保持平衡,因为他们的所有身体部位都超过了-。 /o\ ------ --- 吉米将平衡,因为两个身体部位都在-s 之上。 /o\ -- ---- -- 即使将Jimmy分为两个平台,他们也会保持平衡 /o\ - 吉米不会平衡,因为两个身体部位不在平台上方。 您的任务是编写一个程序,该程序将平台作为仅包含-s和s(例如,字符串)的加长容器,并输出可放置在平台上的吉米的数量,以使它们均不会掉落,也不会掉落。交叠。吉米人的身体部位之一可能位于弦首的左侧或弦尾的右侧。 这是代码高尔夫球,因此答案以字节计分,目标是减少字节数。 测试用例 输入项 - - - - - -- -- -- ---- - -- -- ------- - 各自的产出 0 0 1 1 2 2 2 3
29 code-golf  string 

19
旋转列
给定一个整数k和一个文本块,或者一个内部数组可能具有不等长的2d数组(类似于一个文本块),则将第k列中的每个字符或元素向上或向下旋转到下一个位置存在。 例 旋转以下文本的第20列(从1开始): A line with more than k characters. A longer line with more than k character. A short line. Rotate here: ------v-- This is long enough. This is not enough. Wrapping around to the first line. 输出: A line with more thtn k characters. A longer line with …

6
救命!我的计算器出现故障!
介绍 我的计算器很奇怪。有时,当我输入时8会显示2。有时,当我输入a 6时会显示+。一些按钮混在一起! 谁能帮我确定哪个? 挑战: 输入:错误方程式列表,结果正确。 输出:交换的两个按钮。 例如: 输入可以是: 123 = 3 8423 = 252 4+4 = 8 4*7-10 = 417 9/3 = 3 42-9 = -36 其预期的输出是:2和*。 为什么?因为如果我们交换2和*,则所有等式都是正确的: 1*3 = 3 84*3 = 252 4+4 = 8 427-10 = 417 9/3 = 3 4*-9 = -36 挑战规则: 输入可以采用任何合理的格式。可以是一个以空格分隔的字符串;字符串列表或-array; 一个包含方程式的列表和另一个包含正确结果的列表。你的来电。请说明您使用的输入格式! …
28 code-golf  number  arithmetic  integer  code-golf  math  number  geometry  code-golf  grid  code-golf  math  number  sequence  primes  code-golf  sequence  kolmogorov-complexity  code-golf  string  ascii-art  alphabet  code-golf  math  sequence  integer  code-golf  number-theory  integer  natural-language  code-golf  date  code-golf  function  code-golf  ascii-art  code-golf  math  number-theory  primes  classification  code-golf  array-manipulation  decision-problem  matrix  code-golf  number  code-golf  code-golf  ascii-art  matrix  code-golf  string  code-golf  sequence  base-conversion  code-golf  code-golf  math  number-theory  combinatorics  integer-partitions  code-golf  integer  binary  base-conversion  code-golf  integer  base-conversion  palindrome  code-golf  code-golf  integer-partitions  code-golf  math  ascii-art  matrix  code-golf  number  sequence  number-theory  matrix  code-golf  interpreter  code-golf  graph-theory  code-golf  ascii-art  decision-problem  code-golf  division  code-golf  array-manipulation  primes  code-golf  string  ascii-art  code-golf  primes  counting  code-golf  matrix  unicode  code-golf  source-layout  code-golf  grammars  code-golf  string  cops-and-robbers  regular-expression  obfuscation  string  code-challenge  cops-and-robbers  regular-expression  code-golf  kolmogorov-complexity  game  card-games  code-golf  kolmogorov-complexity  code-golf  array-manipulation  matrix  code-challenge  cops-and-robbers  code-challenge  decision-problem  cops-and-robbers  code-golf  permutations 

29
输出一个字谜!不,不是那个!
给定一个彼此为字谜的唯一字符串的列表,请输出与列表中每个单词都不同的那些单词的字谜。 字符串将为字母数字,并且保证有一个有效的字谜。 程序或函数可以但不一定是不确定的,这意味着在给定相同输入的情况下,只要每个可能的输出都是有效的,多次运行该代码即可产生不同的输出。 测试用例 [Input] -> Possible output ----------------- [ab] -> ba [aba, aab] -> baa [123, 132, 231, 312, 321] -> 213 [hq999, 9h9q9, 9qh99] -> 999hq [abcde123, ab3e1cd2, 321edbac, bcda1e23] -> ba213ecd

30
'abc'和'cba'
您的任务很简单,编写一个代码段,当以一种语言执行时仅输出字符串,'abc'而以另一种语言执行时仅输出字符串'cba'。该程序不应该输入。 这是一个代码高尔夫挑战。

1
计算文本中的拼写错误;尽量减少代码中的拼写错误
编写一个需要两个输入的程序或函数: 一条短信 此 Github文件中显示的英语词典(包含约60000个单词) 并输出消息中的拼写错误数(有关定义和测试用例,请参见下文)。 您可以将字典作为函数的参数,作为程序期望找到的预定义文件,以代码中的硬编码数据或任何其他明智的方式接收。 您的代码本身应该看起来像一条短信,并且拼写错误最少。因此,您将通过将代码本身作为输入输入来计算代码的分数。 获胜者是得分最低的代码(可能的最低得分为0)。如果有多个分数相同的答案,则获胜者取决于代码大小(以字符为单位)。如果仍然有两个答案,则获胜者是较早的一个。 如果需要,可以假定输入消息为ASCII码(字节32 ... 126),其中换行符以常规方式编码(1字节“ 10”或2字节“ 13 10”),并且为非空。但是,如果您的代码包含非ASCII字符,则它也应支持非ASCII输入(以便它可以计算自己的分数)。 字符分为以下几类: 字母 a ... z和A ... Z 空格(此处定义为空格字符或换行符) 标点 . , ; : ! ? 句子结束 . ! ? 垃圾(其余所有) 甲字被定义为字母序列,这是最大的(即,既不,前面和后面通过一字母)。 甲句子被定义为不属于句结束字符的最大序列。 如果字符违反任何拼写规则,则表示拼写错误: 字母必须属于词典单词(或者换句话说:没有出现在词典中的每个长度为N的单词都算作N个拼写错误) 句子中的第一个字符(忽略任何开头的空白字符)必须是大写字母 除上一条规则指定的字母外,所有字母均必须小写 标点符号只能在字母或乱码之后使用 换行符只能在句子结尾的字符之后 消息开头和之后的空格字符不允许使用空格字符 不应有垃圾(或换句话说:每个垃圾字符计数是一个拼写错误) 另外,最后一句必须为空或仅由一个换行符组成(即,消息应以句子结尾字符和可选的换行符结尾-我们称之为规则8)。 测试用例(在每个字符下面是一个违反的规则;在后面=>是必需的答案): Here is my 1st …

28
按元素的字符串乘法
灵感来自这个挑战(感谢@cairdcoinheringaahing为标题!),你的任务就是用下面的规则来取两个打印的ASCII字符串,并乘其逐元素。 它是如何工作的? 给定两个字符串(例如split和isbn),您将首先截断较长的字符串,使它们具有相等的长度,然后确定其ASCII码: split -> spli -> [115, 112, 108, 105] isbn -> isbn -> [105, 115, 98, 110] 下一步将是[0..94]通过减去32每个代码将它们映射到范围: [115, 112, 108, 105] -> [83, 80, 76, 73] [105, 115, 98, 110] -> [73, 83, 66, 78] 现在,您将它们乘以逐元素的模95(以保持在可打印范围内): [83, 80, 76, 73] ⊗ [73, 83, 66, 78] -> [74, …

30
加长信纸
给定一个非空的小写ASCII字母a-z字符串,请输出该字符串,并且该字母的每个连续“游程”都要加长该字母的一个副本。 例如,dddogg(3 d “S,1 o,2 g “S)打开到ddddooggg(4 d “S,2 o “S,3 g “S)。 这是代码高尔夫球:以字节为单位的最短答案将获胜。 测试用例 aabbcccc-> aaabbbccccc 门铃-> ddooorrbbeelll uuuuuuuuuuz-> uuuuuuuuuuzz q-> qq xyxyxy-> xxyyxxyyxxyy xxxyyy-> xxxxyyyy
28 code-golf  string 

11
区分大小写(非常)的字符串更有趣
受此挑战(或更具体地说,是通过误读)的启发,我提出了以下挑战: 给定输入字符串S,请颠倒所有大写字符和所有小写字符的顺序。保留所有非字母字符。例如: 请注意,大写字母W(第一个大写字母)被替换为H(最后一个)。小写字母也一样:“ d”(第一个)被e(最后一个)交换,l(第二个)被l(pen-ultimate)替换……所有非字母字符都保留在原位。 输入值 输入是仅包含32-126范围内的ASCII字符的字符串。 保证输入的字符长度至少为1个字符,并且不会超出您的语言限制。 输出量 相同的字符串,并按说明交换字符。 附加规则 禁止出现标准漏洞 答案必须是完整的程序或功能,而不是摘要或REPL条目。 代码高尔夫,最短答案(以字节为单位)获胜。 测试用例 A A Ok Ok OK KO Hello, World! Wdlro, Holle! 0123456789 0123456789 The quick brown Fox jumps over the lazy doge Feg odyza lehtr Tev ospmu jxon wor bkci uqeh odd ddo racecar racecar EtOn Em …
28 code-golf  string 

30
像ABC一样容易
输入值 包含每个字母的最多一个字符串A,B和C。它们可以按任何顺序排列。空字符串是有效输入。 注意:此挑战的先前版本使用字母LEJ代替,ABC如果需要,它们仍可以使用。 输出量 的字符串A,B,C字母不存在输入。它们可以按任何顺序排列。 如果输出为空字符串,则简单地不给出任何输出是有效的,如果这对您的实现有意义。(例如,您不需要实际调用print一个空字符串。) 例子 如果输入是B,则输出应该要么是CA或者AC因为A与C不存在于输入端。 如果输入为空字符串,则输出应为ABC或任何排列,因为输入中的三个字母均不存在。 如果输入为,CAB则输出应为空字符串,因为所有三个字母均出现在输入中。 测试用例 输入案例很少,我们可以列举所有这些案例: in -> out1 | out2 | out3 | ... ABC -> "" ACB -> "" BCA -> "" BAC -> "" CAB -> "" CBA -> "" AB -> C AC -> B BC -> A BA -> …

9
检测由M和S字符组成的ASCII艺术窗口
窗口是一种ASCII艺术形式的正方形,其奇数边的长度至少为3,边缘带有单个字符边框,中间有垂直和水平笔触: ####### # # # # # # ####### # # # # # # ####### MS窗口是仅由字符M和组成边框的窗口S。您的任务是编写一个程序(或函数),该程序接受一个字符串,如果输入是有效的MS Window,则输出一个真实值,否则输入一个虚假值。 技术指标 您可以将输入作为换行符分隔的字符串或代表每一行的字符串数组。 MS窗口的边框可能包含M和S字符的混合,但内部始终由空格组成。 您可以选择仅检测带有尾随换行符的窗口,或者仅检测不带尾随换行符的窗口,但不能同时检测这两者。 测试用例 真相: MMM MMM MMM SMSMS M M S SMSMM S S M SMSMS MMMMMMM M S M M S M MSSSSSM M S M M S M …

19
URL友好的标题
这个网站上的人们真的很喜欢修饰自己的帖子标题... Stewie's sequence: + * - / + * - / 但是,当此标题需要包含在页面URL中时,它可以简化: stewies-sequence 挑战 您的任务是创建一个程序或函数,给定代表帖子标题的字符串,该程序或函数将输出/返回其“ URL友好”转换。 该算法是: 转换为小写字母(如果适用) 用破折号()替换每个空格(),句点(.),逗号(,)或斜杠/(-) 删除所有非字母数字字符,破折号除外。 缩小相邻破折号(a---b -> a-b)的组,删除所有前导/尾随的破折号。 请注意,此算法只是一种简化,可能不会总是产生与该站点的真实方法相同的结果。 规则 您可以假设输入: 不会为空。 将至少包含一个字母数字字符。 仅包含ASCII范围32-126中的字符(可打印) 允许使用完整的程序或功能。 这不准确的任务说明一个内置的是不是允许的。 这是代码高尔夫球,因此最短的解决方案(以字节为单位)获胜! 测试用例 该网站上的大多数帖子都将用作测试,但这是一个方便的列表: Loading... Forever -> loading-forever N(e(s(t))) a string -> nest-a-string "Hello, World!" -> hello-world URL-Friendly titles -> …

20
可配对的字符串
如果字符串可以拆分为子字符串,则该字符串是可配对的,每个子字符串都是连续重复两次的字符串。例如,aabaaababbbaba可配对为: aaba aaba b b ba ba 给定一个非空字符串a“ s”和b“ s”,如果可以配对,则输出True值,如果不是,则输出Falsey值。 可配对: aa abaaba bbababbb aabaaababbbaba babababa bbbbbbbbbbbb aaababbabbabbbababbaabaabaababaaba aaaabaab 无法配对: a ba baab abaabaaba bbbbbbbbbbbbbbb baababbabaaaab aaaaabbaaaaa 我鼓励您提出非基于正则表达式的解决方案,即使您的语言中已经存在较短的正则表达式答案。您可以将它们标记为“ no regex”。正则表达式是指内置的字符串模式匹配子系统。 排行榜: 显示代码段 var QUESTION_ID=98252,OVERRIDE_USER=20260;function answersUrl(e){return"https://api.stackexchange.com/2.2/questions/98252/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 …

30
打印字母斐波那契
给定N(2 <= N),按如下方式打印字母Fibonacci系列的N行(即N = 5)首先,从a和开始b: a b 接下来,添加两行。 a b ab 继续添加最后两行。 a b ab bab 继续... a b ab bab abbab 我们完成了。 提醒,这是code-golf,所以字节最少的代码将获胜。

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.