Python 使用输入字符串可以创建多少次单词?
以下是我试图解决的问题: 编写程序以执行以下操作:Python 使用输入字符串可以创建多少次单词?,python,Python,以下是我试图解决的问题: 编写程序以执行以下操作: 从两个单独的输入行读取两个输入-一个字符序列S和另一个较短的序列Y S仅包含a-z中的小写字符 计算并打印给定序列S生成给定单词Y的次数 字符串S中的字符可以按顺序使用 每个字符只能使用一次 样本输入: apqrctklatc//输入 cat//我们需要从输入创建的单词 输出: 单词cat可以形成两次我的解决方案是: 步骤1:计算每个不同字符在第二次输入中出现的次数。将结果保存到名为mapA的映射中,例如:a-2次,b-3次,等等 步骤2
- 从两个单独的输入行读取两个输入-一个字符序列S和另一个较短的序列Y
- S仅包含a-z中的小写字符
- 计算并打印给定序列S生成给定单词Y的次数
- 字符串S中的字符可以按顺序使用
- 每个字符只能使用一次
- 步骤1:计算每个不同字符在第二次输入中出现的次数。将结果保存到名为
的映射中,例如:a-2次,b-3次,等等mapA
- 步骤2:迭代第一次输入,计算
中每个字符出现的次数。将结果保存到名为mapA
的映射中mapB
- 步骤3:使用高整数值初始化变量(
是一个不错的选择),称为max_int
。遍历result
(或mapA
,因为两个贴图具有相同的键列表)。对于mapB
中的每个键,计算mapA
的下限。如果小于mapB.value/mapA.value
,则将result
设置为该值result
- 步骤4:返回
,这是您需要的结果结果
import re
s="apqrctklatc"
y="cat"
ylst = [x for x in y]
print(ylst)
ycount=[]
for ychar in ylst:
count = len(re.findall(ychar, s))
ycount.append(count)
print("word",y," can be formed",min(ycount),"times")
它对我也有效,您可以看到我的输出:
使用以下方法:
s='apqrctklatc'
y=‘猫’
yc=[]
对于y中的i:
yc.追加(s.count(i))
打印(最小值(yc))
在我看来,这是最简单的解决办法
让我们看看它是如何工作的:
1) 它循环第二个字符串('cat'
)
2) 它计算字符串中的每个字母在另一个字符串中出现的次数,即apqrctklatc,并生成一个列表
3) 它查找所形成列表的最小值,即
yc
欢迎来到堆栈溢出!请仔细阅读,特别是。你在这里的最佳选择是做你的研究,搜索相关的话题,然后尝试一下。在做了更多的研究和搜索之后,发布一篇你的尝试的文章,并明确指出你的困难所在,这可以帮助你获得更好的答案。初学者是受欢迎的,但我们希望在发布问题之前,在尝试解决你自己的问题上花费一定的努力。虽然我们非常愿意帮助您解决您编写的代码的问题,但我们不为您编写代码。拆分两个字符串并查找每个字符的出现次数,将每个字符的出现次数推送到或附加到数组或列表中,然后从中打印最小值。谢谢!这管用!我只需要对s和y使用input(),而不是硬编码的值