|
|
@@ -0,0 +1,28 @@ |
|
|
|
#1.12 能够拼成多少个单词:
|
|
|
|
#给出一个由小写字母组成的字符串 s,使用 s 中的字符来拼凑单词 'balloon'(气球)。字符串 s 中的每个字符最多只能被使用一次,求出 s 中的字符最多可以拼凑出多少个单词 'balloon'。
|
|
|
|
|
|
|
|
str = "ballloonbalxballpoonopq"
|
|
|
|
n = len(str)
|
|
|
|
#字符列表:记录b,a,l,o,n每个字母出现的次数
|
|
|
|
target_list = [1,1,2,2,1]
|
|
|
|
#字符列表:记录b,a,l,o,n每个字母出现的次数
|
|
|
|
letter_count = [0,0,0,0,0]
|
|
|
|
for i in range(len(str)):
|
|
|
|
#更新字符列表
|
|
|
|
if str[i] == 'b':
|
|
|
|
letter_count[0] += 1
|
|
|
|
if str[i] == 'a':
|
|
|
|
letter_count[1] += 1
|
|
|
|
if str[i] == 'l':
|
|
|
|
letter_count[2] += 1
|
|
|
|
if str[i] == 'o':
|
|
|
|
letter_count[3] += 1
|
|
|
|
if str[i] == 'n':
|
|
|
|
letter_count[4] += 1
|
|
|
|
for i in range(len(letter_count)):
|
|
|
|
letter_count[i] = letter_count[i]//target_list[i]
|
|
|
|
count_min = letter_count[0]
|
|
|
|
for i in range(1,len(letter_count)):
|
|
|
|
if count_min > letter_count[i]:
|
|
|
|
count_min = letter_count[i]
|
|
|
|
print(count_min)
|