首页 > 试题广场 >

字符串字符匹配

[编程题]字符串字符匹配
  • 热度指数:171111 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M
  • 算法知识视频讲解
判断短字符串S中的所有字符是否在长字符串T中全部出现。
请注意本题有多组样例输入。
数据范围:
进阶:时间复杂度:,空间复杂度:

输入描述:

输入两个字符串。第一个为短字符串,第二个为长字符串。两个字符串均由小写字母组成。



输出描述:

如果短字符串的所有字符均在长字符串中出现过,则输出字符串"true"。否则输出字符串"false"。

示例1

输入

bc
abc

输出

true

说明

其中abc含有bc,输出"true"
 
def is_allin(short_str, long_str):
    for s in short_str:
        if long_str.count(s) == 0:
            return False
        else:
            continue
    return True

while True:
    try:
        short_str = input()
        long_str = input()

        if is_allin(short_str, long_str):
            print('true')
        elif not is_allin(short_str, long_str):
            print('false')
   
    except:
        break
编辑于 2024-02-29 14:07:04 回复(0)
while True:
    try:
        s,t = input(),input()
        if set(s) & set(t) == set(s):
            print('true')
        else:
            print('false')
    except:
        break
发表于 2022-09-10 08:14:54 回复(0)
a=input()
b=input()
if len(set(b))==len(set(a+b)):
    print('true')
else:
    print("false")
发表于 2022-09-06 09:36:30 回复(0)
a=list(input())
b=list(input())
l=[]
for i in a:
    if i in b:
        l.append(i)
if len(l)==len(a):
    print('true')
else:
    print('false')
发表于 2022-08-30 01:09:31 回复(0)
这题python解法考虑用set:

while True:
    try:
        s = set(input())
        t = set(input())
        if t & s == s:
            print("true")
        else:
            print("false")
    except:
        break



发表于 2022-08-28 20:51:04 回复(0)
while True:
    try:
        l = []
        s = input()
        t = input()
        for i in s:
            for x in t:
                if x == i:
                    l.append(i)
        s1 = set(''.join(l))
        s2 = set(s)
        if s2 == s1:
            print('true')
        else:
            print('false')
    except:
        break
               

发表于 2022-08-23 21:21:20 回复(0)
while True:
    try:
        count = 0
        s = input()
        t = input()
        for element in s:
            if element in t:
                count+=1
        if count == len(s):
            print('true')
        else:
            print('false')
    except:
        break

这题的描述我还以为会把字符拆开,看到题解很多代码都是整个验证的,上当了
题解里的set方法真好,记一下

发表于 2022-08-23 00:15:35 回复(0)
li1 = list(set(input()))
li2 = list(set(input()))
# print(li1)
# print(li2)
flage = "true"
for i in li1:
    if i not in li2:
        flage = "false"
        break     
print(flage)

发表于 2022-08-21 20:15:39 回复(0)
卧槽这题目看错了,这题目不是字符串匹配。这题目只要求短字符串如果都在长字符串中间出现过就OK了。
发表于 2022-08-20 21:26:40 回复(0)
s1=input()
s2=input()
for one in s1:
    if one not in s2:
        print('false')
        break
else:
    print('true')

发表于 2022-08-10 19:54:16 回复(0)
short_s = input()
long_s = input()
#对短字符串与长字符串分别set操作并取交集,如果交集为短字符串set则表示短字符中所有字符都在长字符串中
if set(short_s)&set(long_s) == set(short_s):
    print('true')
else:
    print('false')

发表于 2022-08-09 11:19:27 回复(0)
s1 = input()
s2 = input()
cnt = '' 
for i in s1:
    if i in s2:
        cnt+=i
if cnt == s1:
    print("true")
else:
    print("false")

发表于 2022-08-08 19:54:04 回复(0)
ss=input()
ls=input()
count_ss=0
for i in ss:
    if i in ls:
        count_ss+=1
if count_ss == len(ss):
    print('true')
else:
    print('false')
发表于 2022-08-07 04:39:41 回复(0)
s1 = set(list(input()))
s2 = set(list(input()))
if len(s1 - s2) == 0:
    print('true')
else:
    print('false')

发表于 2022-08-03 19:34:20 回复(0)
a=input()
b=input()

cc=0
for i in range(0, len(a)):
    if a[i] in b:
        cc=cc+1

if cc==len(a):
    print('true')
else:
    print('false')

发表于 2022-07-31 23:39:20 回复(0)
s = input()
t = input()
if set(s) <= set(t):
    print("true")
else:
    print("false")
发表于 2022-07-30 17:05:58 回复(0)
s1 = input()
s2 = input()
for x in s1:
    if x not in s2:
        print('false')
        break
else:
    print('true')

发表于 2022-07-29 23:04:40 回复(0)
s1 = input()
s2 = input()

for i in range(len(s1)):
    if s1[i] in s2:
        a = "true"
    else:
        a = 'false'
        break
print(a)

发表于 2022-07-26 22:11:53 回复(0)