Questions tagged «string»

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

9
将人类可读的时间间隔转换为日期分量
挑战 编写将人类可读的时间间隔转换为以下形式的日期部分的最短程序: {±YEARS|±MONTHS|±DAYS|±HOURS|±MINUTES|±SECONDS} 样品盒 每个测试用例都是两行,输入后跟输出: 1 year 2 months 3 seconds {1|2|0|0|0|3} -2 day 5 year 8months {5|8|-2|0|0|0} 3day 9 years 4 seconds -5 minute 4 years 4 years -3seconds {17|0|3|0|-5|1} 规则 你不能使用 strtotime或任何内置函数来完成整个工作。 最短的代码获胜(字节) 您可以将输出打印到stdout或文件中,结果也可以由函数返回,这取决于您 令牌可以是单数或复数形式。 组件可能是随机的 数字和令牌之间可能没有空格 时间间隔为正时(输入和输出),符号是可选的 如果组件出现多次,则应添加值 每个组件都有自己的符号 组件应分开处理(例如80 minutes在输出中保留为80) 输入保证为小写 高尔夫快乐!
16 code-golf  string  date 

17
查找序列中具有最大1的子字符串
介绍 我想找到最子串1的在序列0的和1的。 输入值 您的程序有两个输入,即序列和子字符串长度。 该序列是任意数量的0“和1”: 01001010101101111011101001010100010101101010101010101101101010010110110110 的子串长度是任意的正的非零整数: 5 输出量 您的程序应输出给定长度的第一个子串的起始索引,该子串包含最多1的。使用以上输入,输出为: 10 字符串中的第一个字符从索引处开始0。 计分 最短的代码胜出! 规则 您的程序必须始终为任何有效输入输出正确的索引。 您可以从默认选项为正的任何答案中选择输入/输出方法。请指定您在答案中选择的方法。

30
在没有RegExps的情况下将字符串拆分为非数字的最短程序
编辑:如果您正在使用Lisp,我在计数字节的底部给出了一些准则。 目标:做最短的函数,将一个字符串拆分为非数字,并返回每个字符串中仅包含数字的数组,而无需使用任何正则表达式。每个字符串中应包含前导零。 当前排名(按类别划分): C / C ++ / C#/ Java: 68(C)...。 GolfScript / APL / J: 13(APL) 所有其他: 17(重击,使用tr),24(红宝石) 规则: (冗长的道歉) 格式必须是带有单个字符串参数的函数。如果需要正确返回数组,最多可以添加两个附加参数(例如,sh / csh / DOS Batch需要一个额外的变量引用才能返回等)。 主要函数声明不计算在内,也不会导入其他标准库。“ #include”,“ import”和“ using”不计算在内。其他一切都做。这确实包括#define和辅助函数。对困惑感到抱歉。将此作为有用的指南,以了解哪些内容不算(用C样式语法编写)//不计入总数,除非可以省略 //不明显,就像Java标准库的一半一样。 #include <stdio.h> import some.builtin.Class //不算,见上文 #define printf p //计入总数 / *任何其他预处理指令等。* / int i = 0; //计数 someFunction(); …
16 code-golf  string 

23
使用给定的括号缩进字符串
给程序以下输入: 块开始字符列表 块结束字符列表 要格式化的字符串 使用以缩进的两个字符集分隔的块来格式化字符串。 格式化是在每个级别上用两个空格完成的,并且括号的放置如下例所示。您可以假定开头和结尾字符集是不相交的。 例如{[(<,}])>作为和作为开始和结束字符集以及以下字符串: abc{xyz{text[note{comment(t{ex}t)abc}]}} 预期以下输出: abc { xyz { text [ note { comment ( t { ex } t ) abc } ] } } 您可能没有对“括号”字符列表进行硬编码。但是,没有指定输入方式。您可以根据需要使用命令行参数或通过标准输入。

4
使用ASCII艺术图可视化长除法
编写一个程序,以可视化方式用ASCII艺术进行长除法。使用您选择的输入格式,输入由两个整数组成:分子和分母。 例子: 1234÷56: 22 ---- 56|1234 112 --- 114 112 --- 2 1002012÷12: 83501 ------- 12|1002012 96 --- 42 36 -- 60 60 -- 12 12 -- 0÷35 0 - 35|0 规则: 编程语言的除法运算符的用途是允许的。 也允许使用大整数支持。 为了保持一致: 如果商为零,则在跳水板的末端打印一个零。 如果余数为零,请不要打印。 不要在任何数字上打印前导零。 末尾多余的换行符和右边的尾随空格是允许的。 字符最少的解决方案获胜。 限制: 0 <=分子<= 10 72 - 1 1 <=分母<= 9999999 …

26
尝试做一个立方体!
基于此:让我成为正方形! 您需要输出以下内容: #### # # # ### # # # # #### 其中将“#”替换为输入。 如果输入“ A”,您应该得到 AAAA A A A AAA A A A A AAAA 如果输入“&”,则应该得到 &&&& & & & &&& & & & & &&&& 排行榜 这是一个堆栈片段,用于按语言生成常规排行榜和获胜者概述。 显示代码段 /* Configuration */ var QUESTION_ID = 121651; // Obtain this from …

13
引用大哥
任务:让您的程序在运行时随机选择以下两个引号之一,并完全按照所示打印该引号。 1: Under the spreading chestnut tree I sold you and you sold me. There lie they, and here lie we Under the spreading chestnut tree. 2: WAR IS PEACE. FREEDOM IS SLAVERY. IGNORANCE IS STRENGTH. 限制:字spreading,chestnut,PEACE,FREEDOM,和STRENGTH 必须出现在你的代码。以上两个引号中的任何单词都不能多次出现在您的代码中。 最短的解决方案获胜。

5
当前的十二生肖是什么?
根据给定国家/地区显示给定时间东部生肖的表情符号。 东部十二生肖是一种分类方案,它将动物及其知名的属性分配给重复的12年周期中的每一年。它也分配给小时。 规则: 必须使用ISO 3166-1 alpha-3代码指定国家/地区。清单在这里。 输入格式必须是这样的:<ISO code> HH:MM。输入必须是单个字符串。任何不适合此格式的输入均属于无关情况。 如果给定时间在以下给定图表的边界内,则可以输出任一个十二生肖。 因为这是代码高尔夫,所以以字节为单位的最短代码获胜。 黄道十二宫: 没有指定国家/地区的黄道带是默认设置。 第一个十二生肖(23:00 – 01:00): 🐀(U + 1F400) 波斯(IRN)的Mouse🐁(U + 1F401) 第二个十二生肖(01:00 – 03:00): 牛🐂(U + 1F402) 越南(VNM)的水牛(U + 1F403) 波斯的(U + 1F404) 第三十二生肖(03:00 – 05:00): 虎🐅(U + 1F405) 波斯豹(U + 1F406) 第四十二生肖(05:00 – 07:00): 兔子🐇(U + 1F407) 越南的猫🐈(U …

6
生成一个
您的任务是生成一个带有指定数量的“音节”的合理发音的无意义的单词。每次运行程序都可能导致一个不同的废话。 发音能力 可发音的单词由音节组成,而音节又由可能夹在两个辅音组之间的元音组组成。并非所有声音在所有位置都能发音,并且由于这取决于语言,因此我们将使用英语使用者可以理解的模式 起始辅音组: b c d f g h j k l m n p r s t v w y z bl br ch ch cl cr dr fl ghgh gn gr kn ph pl pr qu sc sh sk sl sm sn sp st st th tr …

9
滚地毯
这个问题的灵感来自凯文·克鲁伊森的问题。 现在地毯已经铺好了,我们要卷起来。您的任务是编写一个程序,该程序接受一个字符串并返回由该字符串制成的螺旋线(代表从侧面看的卷起的地毯)。 滚动地毯的一个步骤如下。有一个例子可以说明我的意思。请注意,该示例以部分卷起的地毯开始,以更好地理解: ac rpet 将“头”与地毯的“尾巴”分开:头是到目前为止已经滚过的东西,尾巴是还有待滚过的东西。 Head: ac Tail: rp et 将头顺时针旋转90°。 Rotated head: ra Tail (unchanged): pc et 如果新头的宽度(在此2)小于或等于尾巴的长度(在2) 然后把它放在尾巴上 否则,地毯(如该步骤开始时一样)被卷起 New carpet: ra pc et 根据需要重复该过程多次。 两个示例显示了地毯滚动的所有步骤: carpet c arpet ac rpet ra pc et 0123456789 0 123456789 10 23456789 21 30 456789 432 501 6789 一些精度: 您不需要显示所有中间步骤,而仅显示卷起的地毯(例如,如果您找到一种非迭代的方法来计算结果,那是完美的)。另外,您不需要打印任何前导空格,在上面的示例中,我仅显示它们以对齐内容。 …
15 code-golf  string 

7
懒字问题
摘要 老师被告知要为学生准备单词问题。她得到了一系列的方程式,并告诉他们将其写为相应的单词问题。但是,她非常懒惰,因此没有投入太多的创造力。相反,她只是按字面意思写。例如,当她阅读时1+1,她写道one plus one,47 * 2会变成forty seven times two,然后56.2 / 7.4变成fifty six point two divided by seven point four。 编写一些代码来帮助这个懒惰的老师。 细节 数字可能包含小数点和负号。 数字应以小写形式书写。(即1,000,000,000是one billion) 数字最多可以达到999,999,999,999,999,999(nine hundred ninety nine quadrillion...nine hundred ninety nine)。 必须排除零组。例如,1,000,000是one million不是one million zero thousand zero hundred。 小数点后可以有任意多个数字。 小数点后的数字必须逐位列出。例如,12.34是twelve point three four不是twelve point thirty four。 两个数字始终由运算符分隔。 有效运算符为加号(+),减号(-),时间(*)和除以(/)。 没有括号。 …
15 code-golf  string 

30
向上并向前迈向更大的荣耀!
可这一挑战作为(另一个)致敬斯坦·李,谁去世95岁。 斯坦·李(Stan Lee)给我们留下了无价的遗产和奇特的口号:Excelsior。因此,根据他所说的含义,这是一个小挑战: 最后,“ Excelsior”是什么意思?“向上并向前迈向更大的荣耀!”这就是我在发推文时希望您的一切!精益求精! 挑战 给定一系列非负整数,Excelsior!每当一个整数大于前一个整数时,输出一行。 规则 输入将是非负整数的数组。 输出将由带有单词的行Excelsior(大小写无关紧要)组成,后跟多达!当前行的长度(数量越来越大)。您还可以返回字符串数组。 输入和输出格式根据站点规则是灵活的,因此可以随时根据您的语言格式进行调整。您还可以在行末添加空格,如果需要,甚至可以在文本之后或之前添加额外的新行。 例子 Input Output ----------------------------------- [3,2,1,0,5] Excelsior! // Excelsior because 5 > 0 [1,2,3,4,5] Excelsior! // Excelsior because 2 > 1 Excelsior!! // Excelsior because 3 > 2 (run length: 2) Excelsior!!! // Excelsior because 4 > 3 (run length: …

16
最高和弦
最高和弦 给定输入字符串,请返回其每个Unicode字符的总和最高的单词。 规则 输入应以空格分隔 每个单词的值基于单词的UTF-16代码中每个字符的总和 输出应该是具有最高值的第一个单词(如果有重复的总和) 例子 Input: "a b c d e" Output: "e" Input: "hello world" Output: "world" Input: "this is a test" Output: "test" Input: "àà as a test" Output: "àà" Input "α ää" Output: "α" Input: "🍬 隣隣隣" Output: "隣隣隣" Input: "💀 👻 🤡 🦇 🕷️ …

11
模拟NFA
阿非确定性有限自动机是一个有限状态机,其中一个元组被映射到多个状态。就是 我们用另一个函数Δ :Q × Σ → P(Q )代替DFA的常规δ :Q × Σ → Q转换函数。(state,symbol)(state,symbol)(state,symbol)δ:Q×Σ→Q δ:Q×Σ→Q \delta : Q \times \Sigma \to Q\ Δ:Q×Σ→P(Q)Δ:Q×Σ→P(Q)\Delta : Q \times \Sigma \to \mathcal{P}(Q) 如果您知道什么是NFA,则可能要跳过下一部分。 正式定义 NFA的唯一描述是 有限状态集QQQ 一组有限的符号ΣΣ\Sigma 跃迁函数Δ:Q×Σ→P(Q)Δ:Q×Σ→P(Q)\Delta : Q \times \Sigma \to \mathcal{P}(Q) 的初始状态q0∈Qq0∈Qq_0 \in Q 一组最终状态F⊆QF⊆QF \subseteq Q 该机在开出和读取符号的有限串w ^ ∈ Σ …

14
重复韵律并在元音上循环
元音押韵:苹果和香蕉 有一首传统的儿童歌曲,一遍又一遍地重复相同的文本,只有每次将每个元音都替换为随机的元音,但在当前节中保持不变。 挑战 目的是提出对输入文本执行这种转换的最短代码。 规则 您必须将韵母打印多次,因为其中有不同的元音。 每个打印件必须以换行符分隔(接受\n和的特定于平台的组合\r)。 为了进行迭代i,请用i原始文本中的第一个不同的元音替换每个元音。 输入文本是一系列可打印的ASCII字符(范围[32, 126]。 输入将不包含嵌入式换行符。 仅元音字符必须受到影响,其他元音必须完全作为输入输出。 只有元音字符才算:鼻元音,虽然听起来像元音(如法语“ Tintin”),但不能作为单个元音处理。 大小写对于输出很重要,但是是位置性的(用大写替换元音替换大写元音) 大写元音与小写元音没有区别(即a<=> A) 连续元音总是分开考虑的(即,Boat产生Boot和Baat) 由于字母y代表元音或辅音发音(如我们所说的英语),因此允许将其作为元音或辅音来处理,但是答案必须明确说明它们是否y作为元音处理。 例子: 你好,世界 Hello world! 给出: Helle werld! Hollo world! 摘自法文原始文本(翻译),以y元音形式处理: An elephant that was rambling all gently in the woods... 给出: An alaphant that was ramblang all gantla an tha waads... …
15 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.