首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >我的[子]弦在隐藏!

我的[子]弦在隐藏!
EN

Code Golf用户
提问于 2017-05-26 11:51:03
回答 14查看 1.4K关注 0票数 23

Introduction

不久前,一个迷路的用户在这里发布了一个问题,现在它被删除了,但我认为这将是一个很好的挑战,所以在这里.

挑战

编写一个包含两个字符串的完整程序或函数,并检查第一个字符串的任何排列是否是第二个字符串的子字符串。

输入

两个字符串,一个字符串和一个子字符串来测试(您可以选择顺序)。

输出:

如果字符串包含子字符串的任何排列,则为真值。

如果字符串不包含子字符串的任何排列,则为falsey值。

测试是区分大小写的。

示例/测试用例

代码语言:javascript
运行
复制
         sub-string    string          
input    d!rl          Hello World!
output   truthy

input    Pog           Programming Puzzles & Code Golf
output   falsey

input    ghjuyt        asdfhytgju1234
output   truthy
EN

回答 14

Code Golf用户

发布于 2017-05-26 15:33:10

布氏对数,2字节

代码语言:javascript
运行
复制
sp

在网上试试!

解释

代码语言:javascript
运行
复制
Input variable = "Hello World!", Output variable = "d!rl"

(?)s        Take a substring of the Input variable
    p(.)    It is a permutation of the Output variable
票数 15
EN

Code Golf用户

发布于 2017-05-26 15:57:29

JavaScript (ES6),77字节

代码语言:javascript
运行
复制
(s,t)=>t&&[...t.slice(0,s.length)].sort()+''==[...s].sort()|f(s,t.slice(1))

返回1或0。

片段

代码语言:javascript
运行
复制
f=

(s,t)=>t&&[...t.slice(0,s.length)].sort()+''==[...s].sort()|f(s,t.slice(1))

console.log(f('d!rl','Hello World!'))                   //1
console.log(f('Pog','Programming Puzzles & Code Golf')) //0
console.log(f('ghjuyt','asdfhytgju1234'))               //1
票数 7
EN

Code Golf用户

发布于 2017-05-26 12:01:13

05AB1E,3字节

代码语言:javascript
运行
复制
όZ

在网上试试!

-1字节,多亏了埃米尼亚

解释:

代码语言:javascript
运行
复制
όZ 2 inputs
œ                  permutations of the first input
 å  Is each of the                                 in the second input?
  Z Take the maximum of the resulting boolean list
票数 6
EN
页面原文内容由Code Golf提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://codegolf.stackexchange.com/questions/122937

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档