Questions tagged «string»

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

15
扩展真理机
许多人知道编程中的真机。但是现在是时候让我们努力了。介绍,扩展的真机!扩展的真理机器将两件事作为输入,一个整数n和一个非空字符串s。输出s n带有可选尾随空格的时间。但是,如果n等于0,则必须输出,s直到手动停止程序为止,即永远不要终止它。 另外,如果n为负数,则字符串需要颠倒。例如,使用s=helloand n=-1,输出将为olleh。 输入的标准方法,任何种类的输出,只要可以处理无限。如果您的答案不能处理无限大,请在有趣的情况下或以无法处理无限大输出的语言随意发布。 测试用例 n, s, output 5, "hello world", "hello worldhello worldhello worldhello worldhello world" 0, "PPCG", "PPCGPPCGPPCGPPCG..." -2, "truThY", "YhTurtYhTurt" 2000, "o", "oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo" 这是代码高尔夫球,所以最短的代码获胜! 这是原始的沙盒帖子。已对其进行了编辑。感谢@ComradeSparklePony创建了这个挑战的想法

1
展平立方体
您是否曾经看过3D形状,并认为我们有2个许多维度。因此,让我们将3D变成1D!(看看我在那里做了什么?) 任务 给定多维数据集的2D表示形式(下面的布局),根据指针将其展平为单个字符串。 多维数据集 这是立方体的布局,其中无操作(,)和指针位于角(<>v^/)。导航指针(NP)在显示的位置启动程序。 | NP begins here, moving right. V >,,,,,,,,,,,,,,,,,,v , ,, , , , , , , , , , , , , , , , , , , , , , /,,,,,,,,,,,,,,,,,,/ / , , , , , , , , , , , , …

1
防旋转安全绳
编写一个适当的quine,其每个旋转本身就是一个适当的quine。 例如,如果您的源代码是abcdef,则: abcdef 将输出 abcdef bcdefa 将输出 bcdefa cdefab 将输出 cdefab defabc 将输出 defabc efabcd 将输出 efabcd fabcde 将输出 fabcde 旋转“是通过将字符串分成两部分并颠倒其顺序来进行的”。 计分 这是代码高尔夫球。以字节为单位的最短答案将获胜。有标准漏洞。

13
放置滑翔机!
这个: 是滑翔机。 在Conway的《生命游戏》中,滑翔机是一种著名的图案,可以快速遍历整个滑板。对于今天的挑战,我们将绘制一个ASCII艺术的生命游戏板,并在其上放置一个滑翔机。 我们开始的董事会是这样的: |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| 此木板完全由管道|和下划线组成_,为10x10。您必须编写一个包含两个整数“ x”和“ y”的程序或函数,并在这些坐标处使用滑翔机输出同一块板。例如,如果在位置(1, 1)(索引为0)有一个滑翔机,则必须输出以下内容: |_|_|_|_|_|_|_|_|_|_| |_|_|*|_|_|_|_|_|_|_| |_|_|_|*|_|_|_|_|_|_| |_|*|*|*|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| 您可以假设滑翔机将永远不会超出范围,因此x和y都将始终在该[0-7]范围内。您也可以选择采用1索引的坐标,但是必须在答案中指定。在这种情况下,输入将始终在[1-8]范围内。以下是一些示例(所有索引均为0): 0, 0: |_|*|_|_|_|_|_|_|_|_| |_|_|*|_|_|_|_|_|_|_| |*|*|*|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| 7, 7: |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| …

12
没有免费的午餐
...或者在那里? 您的挑战是解析我的午餐账单,其中包含基本价格,小费,折扣,优惠券和其他费用,并找出我的午餐是否在$ 0或以下。如果这是输入: 12.34 15 tip 25 discount 1.5 extra 2 coupon 那么输出可能是false。运作方式如下: 12.34 是底价。 15 tip表示将总数增加15%。 25 discount表示从总数中减去25%。 1.5 extra表示将总数加1.5。 2 coupon表示从总数中减去2。 可能有任何数量的小费,折扣,优惠券和其他功能,但始终会有一个基本价格。 然后我们(12.34 * 1.15) * 0.75 + 1.5 - 2为10.14 做输出。10.14大于0,因此我们输出false。我的午餐不是免费的。 规则 数 tip手段添加数%至总。 数字 discount表示从总数中减去数字百分比 数字 extra表示将数字加到总数中 数字 coupon表示从总数中减去数字 另一个例子: 10 20 tip 20 discount 2 …

20
消除空白行上的空白
嗯,这是我对Stack的另一自私使用。 作为Chromebook的所有者,我经常使用Cloud9使用的编辑器Ace IDE。它有很多用于处理多余空白的工具,但值得注意的是缺少一种:清除空白行。 今天的任务是,从一个地方输入,我可以将其复制粘贴到[ ;)],输出相同的东西,将所有空格和制表符保存在空白行上。 我将给出一些示例,其中#s表示要删除的空白字符。 输入1: if (this.Color !== 'blue') { ## this.Color = 'blue'; } 输出: if (this.Color !== 'blue') { [empty line] this.Color = 'blue'; } 输入2: function outputSomething(times) { for (var iter = 0; iter < times; iter++) { console.log('"# # " represents a tabulator'); // …

9
缩短绝对路径
有时,使用当前工作目录作为参考,可以缩短长的绝对路径,例如linux工具的命令行参数。 $ pwd /home/heh $ cat /home/heh/mydir/myfile my stuff $ cat mydir/myfile my stuff 在这个挑战中,您应该使一个函数或程序接收两个参数: 绝对路径,使用linux格式(以开头/) 当前目录,使用相同格式 输出是以下两者中的较短者: 输入1不变 与绝对路径引用相同文件/目录的相对路径 重点: 如果您的操作系统与linux兼容,则可以使用系统的当前目录而不是将其接收为输入 您可以假定输入仅包含字母数字字符(和路径分隔符) 您可以假设输入的绝对路径/末尾没有路径分隔符 您可以假设输入的当前目录/在末尾有路径分隔符 您不能假定绝对路径引用了一个现有文件,或者该文件的任何部分都是可访问的目录;但是,可以假定当前目录有效 您可以假设在任何一条路径附近都没有符号链接-因为我不想使用任何特殊的方式来处理符号链接 无需支持其中两个输入均为根目录的情况 “当前目录”应输出为.(空字符串无效) 测试用例(输入1,输入2,输出): /home/user/mydir/myfile /home/user mydir/myfile /var/users/admin/secret/passwd /var/users/joe/hack ../../admin/secret/passwd /home/user/myfile /tmp/someplace /home/user/myfile /dir1/dir2 /dir1/dir2/dir3/dir4 ../.. /dir1/dir2 /dir1/dir2 .

10
更改,循环和显示标志的填充最少
输入: 两个整数:一个负数,一个正数。 输出: 在第一行上,输出从最低到最高。在第二行中,我们删除了最高和最低数字,并对所有单个数字进行了符号更改。在第三行中,我们再次删除了最高和最低数字,并再次对所有单个数字进行了符号更改。等等。(下面的示例应该使挑战更加清楚。) 重要提示:此外,我们添加空格以使一列中的数字全部对齐(在右侧)。 最小对齐是此挑战的主要部分,这意味着您不能仅使每个数字都具有相同的宽度。列的宽度基于该特定列的最大数字宽度(并且带符号更改的顺序是使数字每列的宽度有所不同)。 例如: Input: -3,6 Output: -3,-2,-1, 0, 1, 2, 3, 4,5,6 // sequence from lowest to highest 2, 1, 0,-1,-2,-3,-4,-5 // -3 and 6 removed; then all signs changed -1, 0, 1, 2, 3, 4 // 2 and -5 removed; then all signs changed again …

5
扭曲的句子
规则 该程序应接收一个字符串/单词数组作为输入。对于字符串/数组中的每个单词,它将通过从单词的正面和背面以交替方式获取字符来重建单词。 12345 678 9-> 15243 687 9。 然后,它将以字符串中最早出现的单词和最新出现的单词之间交替的方式重新排列单词。 15243 687 9-> 15243 9 687 最后,它将通过在输出结果之前将空格,制表符和换行符放置在它们最初所在的索引处来重建字符串。 12345 678 9-> 15243 687 9-> 15243 9687-> 15243 968 7 输出应与输入具有相同的数据类型。 禁止标准漏洞 例子 输入: 敏捷的棕色狐狸跳过了懒狗。 输出: Teh d.ogq kucil yaz bnrwo tehf xoo rvej supm 输入: 敏捷的棕色狐狸跳过 了懒狗。 输出: Teh d.ogq kucil yaz …

5
报价安全的五线组
您的任务很简单:编写一个无需输入即可输出(或返回)其源代码的程序(或函数)。要注意的是,当将程序包装为"quotes"(Unicode字符34)时,它应该再次输出其(现在已引用)源代码。 奎因的标准规则适用。这是代码高尔夫球,因此最短的程序(以字节为单位)获胜。

2
卷蛋糕短语
蛋糕卷是由一层海绵蛋糕,一层奶油(或冰淇淋)制成的,呈螺旋状卷制而成的美味甜点,请参阅Wikipedia。 您的任务是从标准输入中获取一个非空短语字符串,将空格去除,然后将其作为滚动蛋糕从中心向逆时针方向从左到左滚动,而空格从第一个空格的底部开始短语字符,从左到右,如以下示例所示。 请注意,该短语将是海绵蛋糕层,而奶油层将表示为空白区域。 Input: Lorem ipsum dolor sit amet, consectetu adipiscing elit, sed do eiusmod Output with spaces ' ' represented as _ ilegnicsip t________i ,_srolod_d s_i____m_a e_t_oL_u_u d_a_r__s_t d_m_emip_e o_e______t e_t,consec i____ usmod 测试用例 Input: Lorem ipsum dolor sit amet, consectetu adipiscing elit, sed do eiusmod Output: ilegnicsip t …

6
它是表情符号吗?
我最近一直在使用此iOS应用程序,遇到一个(相当容易解决的)问题:如何确定我的字符串是否仅包含表情符号? 好吧,今天就是你的工作! 输入项 一个字符串。如果Unicode字符的存在对您有问题,则可以使用其他合理的格式。如果您做的事情与常规字符串不同,请说明您的操作。 输出量 如果输入字符串仅包含表情符号,则打印或返回真实值;如果包含表情符号以外的任何字符,则打印或返回虚假值。 等一下...什么是表情符号?😅 表情符号是属于以下范围的字符: 0x1F600...0x1F64F // Emoticons 0x1F300...0x1F5FF // Misc Symbols and Pictographs 0x1F680...0x1F6FF // Transport and Map 0x2600...0x26FF // Misc symbols 0x2700...0x27BF // Dingbats 0xFE00...0xFE0F // Variation Selectors (我认为) 这是🔹code - golf🔹,因此以字节为单位的最短代码胜出❕ 测试用例 "Is it an emoji? 🤔" -> False "🔹code-golf🔹" -> False "😮 😥 …

2
重叠线序
(灵感来自在干擦板上绘图) 挑战: 给定一个包含表示白板上不同颜色的干擦标记的字符的输入字符串,请从头到尾输出它们绘制的顺序。 输入: 一个包含以字母表示的干擦标记颜色的字符串(大写字母与小写字母不同,只要每种颜色都有不同的字母,您就可以替换示例中使用的任何字符)。白板的其余部分将为空白。每块板上每种颜色只有一行。所有行都不会重叠的输入(请参见测试用例4)。所有线条都是直线,可以是水平的也可以是垂直的。 输出: 从第一个到最后一个在板上画线的顺序。如果任何输入有多种解决方案,则可以输出其中任何一种。您可以按照自己喜欢的方式设置输出的格式:单个字符串或由空格,换行符等分隔,只要使用的字符与输入中使用的字符匹配即可。 测试用例: 输入1: R R BBRBB R 输出1: BR 输入2: GY GY RRRRGYRRR GY GY BBBBBBBB GY GY 输出2: RGYB // or RYGB 输入3: R P R P AAAARAAAAPA R P R P GGGGRGGG P R 输出3: AGPR // or APGR 输入4: O Y …
17 code-golf  string 

25
产品目录
这个问题是关于将代表产品标识符的字符串分成三个部分。 第一部分由任意长度的上下字母组成,代表仓库。 第二部分是代表产品编号的数字。这部分也是任意长度的。 最后一部分是大小和颜色的限定词,该部分一直持续到字符串的末尾。限定词保证以大写字母开头,并由字母数字字符组成。 每个部分应打印清晰分开。保证每个部分都是非空的。 获胜者是使用最少字节来解决此问题的人。 示例: 输入: UK7898S14 输出: UK 7898 S14 在这里英国是英国,产品代码是7898,而S14是尺寸14。 示例2: 输入: cphDK1234CYELLOWS14QGOOD 输出: cphDK 1234 CYELLOWS14QGOOD 这里的cphDK是丹麦的哥本哈根,产品代码是1234,CYELLOWS14QGOOD表示黄色,大小14,质量很好。
17 code-golf  string 

3
到包含子串的回文的最小汉明距离
这是受一个现已删除的CS.SE问题启发的。 任务 给定两个非空输入字符串A和B,输出从A到包含B作为子字符串的回文的最小距离。距离由字符替换的数量(汉明距离)定义。 限制条件 明智的输入:存在回文。这意味着| A | ≥| B |。 A和B仅包含小写ASCII字符,小写和大写字母是不同的(其他所有字符也一样)。 如果您的语言无法处理ASCII字符,则也可以使用整数(或其他一些合理的数据类型),并且可以选择将范围限制为128个元素。 您可以从标准输入,函数参数,命令行参数等中获取输入。 您可以在标准输出,返回值等上给出结果。 您不需要给出工作回文,到一个最小的距离就足够了。 例子 A B Output thilloaoyreot hello 4 (thelloaolleht) benjonson stack 9 (stackcats) neversaynever! odd 9 (neveroddoreven) ppcggcpp gg 0 (ppcggcpp) stars tat 1 (stats) 计分 这是代码高尔夫,以字节为单位的最短代码获胜。

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.