永恒的蓝色梦想
发表于 2020-5-1 22:35:15
Twilight6 发表于 2020-5-1 22:20
嘿嘿 我可是自己想的,我没拿别人轮子用
sorted,str.count,严格来说都是轮子。
Frozen83
发表于 2020-5-1 22:40:13
def P387(s):
dic = {}
n = []
for each in s:
dic = s.count(each)
for i in dic:
n.append(dic.get(i))
while len(n) > 0:
for i in dic:
num = dic.get(i)
m = max(n)
if num == m:
print(i*num,end='')
del dic
n.remove(m)
break
s = input()
P387(s)
zltzlt
发表于 2020-5-1 22:55:23
xiangjianshinan 发表于 2020-4-30 15:37
8 ms
zltzlt
发表于 2020-5-1 22:58:52
kinkon 发表于 2020-4-30 15:40
7 ms
zltzlt
发表于 2020-5-1 22:59:24
findland 发表于 2020-4-30 16:10
9 ms
zltzlt
发表于 2020-5-1 22:59:50
阴阳神万物主 发表于 2020-4-30 16:33
凑热闹.png
代码如下:
7 ms
zltzlt
发表于 2020-5-1 23:02:47
kkk999de 发表于 2020-4-30 16:52
7 ms
zltzlt
发表于 2020-5-1 23:04:02
风魔孤行者 发表于 2020-4-30 19:53
19 ms
zltzlt
发表于 2020-5-1 23:05:02
harryfooty 发表于 2020-4-30 22:42
看完大佬们写的,不敢发了
没关系,一起进步~~~
用时 11 ms
zltzlt
发表于 2020-5-1 23:05:37
whosyourdaddy 发表于 2020-4-30 23:26
输入示例 3 中的数据出错
Twilight6
发表于 2020-5-1 23:06:50
永恒的蓝色梦想 发表于 2020-5-1 22:35
sorted,str.count,严格来说都是轮子。
嗷嗷 好吧
zltzlt
发表于 2020-5-1 23:07:02
Python3005 发表于 2020-5-1 00:34
输入 'cccaaaccaa' 结果有误
zltzlt
发表于 2020-5-1 23:09:34
Frozen83 发表于 2020-5-1 22:40
效率不高哦
Lemon233
发表于 2020-5-16 01:40:57
def daily387(k="ccbcaaddddda"):
t = {}
str2 = ""
for j in k:
if j in t:
t += 1
else:
t = 1
t = sorted(t.items(), key=lambda x: x, reverse=True)
for a, b in t:
str2 += a * b
print(str2)
daily387()
python就不计较时间复杂度了,这个用C写,数组我写的时间复杂度(n^3),空间复杂度(3n)
Lemon233
发表于 2020-5-16 01:47:25
Twilight6 发表于 2020-5-1 23:06
嗷嗷 好吧
python底层很多都是C写的,sorted,count,index,find等等,其实你用python 循环也可以实现,
776667
发表于 2020-5-26 16:27:05
def fun387(x):
set_x = list(set(x))
counter = sorted(list(set()))[::-1]
result = ''
for i in counter:
for j in set_x:
if x.count(j) == i:
result += j*i
return result
zwhe
发表于 2020-5-27 10:16:08
{:10_312:}
graceasyi
发表于 2020-5-28 11:45:53
def fun387(instr):
inlist = set(list(instr))
temp = []
for i in inlist:
temp.append((i, instr.count(i)))
temp.sort(key=lambda x:x, reverse=True)
result = ''
for i in temp:
result += i*i
return result