zltzlt
发表于 2020-4-24 13:28:43
lucky邪神 发表于 2020-4-22 22:41
笨办法,初步想到这么,工作忙完在来想想
输入 s = "ababacb", k = 3 时结果有误
zltzlt
发表于 2020-4-24 13:31:11
dengyk 发表于 2020-4-23 00:02
还要接收一个整数 k
zltzlt
发表于 2020-4-24 13:31:35
斐波纳税 发表于 2020-4-23 00:09
我只负责写bug,找bug就交给我们亲爱的版主了
{:10_266:}输入 s = "ababacb", k = 3 时结果有误
zltzlt
发表于 2020-4-24 13:32:03
kkk999de 发表于 2020-4-23 08:32
输入 s = "ababacb", k = 3 时结果有误
zltzlt
发表于 2020-4-24 13:32:26
_2_ 发表于 2020-4-23 08:53
然后就是 @zltzlt 回的一堆「解答错误」,
这点我深有感触
{:10_256:}
zltzlt
发表于 2020-4-24 13:33:01
xiangjianshinan 发表于 2020-4-23 10:53
当 s 为空字符串时出错
_2_
发表于 2020-4-24 13:42:03
zltzlt 发表于 2020-4-24 13:32
好多都是 力扣 上的难题坑题,我干脆不做
但是那个悬赏还是很诱人{:10_256:}
whosyourdaddy
发表于 2020-4-24 20:21:30
def func382(s,k):
temp = set(s)
l = []
for i in temp:
if s.count(i) < k:
l.append(i)
if l == []:
return max(s.count(i) for i in temp)
for i in l:
s = s.split(i)
return max(len(i) for i in s)
zltzlt
发表于 2020-4-25 13:52:22
xiangjianshinan 发表于 2020-4-23 10:53
楼主:回复的
当 s 为空字符串时出错
已修改~~~
输入以下数据出错:
s = "weitong"
k = 2
g5506058
发表于 2020-4-25 17:11:10
def count_num(sag):
count = {}
for word in sag:
if word not in count.keys():
count = 1
elif word in count.keys():
count +=1
return count
def get_cut():
global sag
cut_num = len(sag)
for i in range(0, len(sag)):
if i == 0:
yield sag
else:
for num in range(0, i+1):
sag_cut = sag
yield sag_cut
cut_num -=1
def judge(count, k):
for num in count.values():
if num < k:
return False
break
else:
pass
return True
def get_sag(aa, k):
try:
while True:
sag = next(aa)
counts = count_num(sag)
if judge(counts, k):
return sag
break
except StopIteration:
return '无符合条件字符串!'
sag = 'aaxaaaabbbbsfdrskkksskkk'
aa = get_cut()
get_sag(aa,2)
这个代码只能返回一个结果
zltzlt
发表于 2020-4-25 18:20:45
Frozen83 发表于 2020-4-23 12:29
萌新请大佬赐教
输入超长字符串超出时间限制
zltzlt
发表于 2020-4-25 18:30:00
旅途Z 发表于 2020-4-23 13:23
有点像 二分法?2333
输入超长字符串超出时间限制
zltzlt
发表于 2020-4-25 19:09:06
findland 发表于 2020-4-23 15:04
当 s 为 'ababacb' 时结果有误
子串要是连续的
小十九
发表于 2020-4-25 19:10:38
本帖最后由 小十九 于 2020-4-25 19:15 编辑
from collections import Counter
def Q382(lower_string,k):
result_list = []
substring = ""
for n in range(0,len(lower_string)+1-k):
for m in range(k+n,len(lower_string)+1):
sub = lower_string
dict_string = Counter(sub)
min_string = min(dict_string.values())
if min_string >= k :
result_list.append(sub)
result = ''
for i in result_list:
if len(i)>len(result):
result = i
return len(result)
Twilight6
发表于 2020-4-25 20:11:25
晚到了,末班车赶得上嘛?
def judge(t,k):
a = list(set(map(str,t)))
temp = ''
for i in a :
if t.count(i) >= k:
temp += t.count(i)*i
return len(temp)
xiangjianshinan
发表于 2020-4-26 08:20:40
zltzlt 发表于 2020-4-25 13:52
输入以下数据出错:
求问老大,您是怎么在查的???
我是连看别人的代码都懒得看的人(看不懂别人的思维方式)。
佩服佩服~~~~~~
另:代码已修改。辛苦大佬啦。
zltzlt
发表于 2020-4-26 13:17:04
xiangjianshinan 发表于 2020-4-23 10:53
楼主:回复的
当 s 为空字符串时出错
已修改~~~
输入 s = 'ababacb', k = 3 结果有误
zltzlt
发表于 2020-4-26 13:17:55
风魔孤行者 发表于 2020-4-23 22:17
输入以下数据结果有误:
s = "bbaaacbd"
k = 3
zltzlt
发表于 2020-4-26 13:19:41
whosyourdaddy 发表于 2020-4-24 20:21
def func382(s,k):
temp = set(s)
l = []
输入 s = 'aaabbb', k = 3 结果有误
zltzlt
发表于 2020-4-26 13:22:05
小十九 发表于 2020-4-25 19:10
from collections import Counter
def Q382(lower_string,k):
result_list = []
输入超长字符串超出时间限制