题解 | 字符串排序

字符串排序

https://www.nowcoder.com/practice/5af18ba2eb45443aa91a11e848aa6723

import sys

n=int(input())
words=[input().split()[0] for i in range(n)]
for word in sorted(words):
    print(word)

'''import sys
n=int(input())
words=[input().split()[0] for i in range(n)]
max_len=0
for word in words:
    if max_len<len(word):
        max_len=len(word)
#print(min(3,5))
for i in range(max_len):
    for j in range(n):
        for k in range(j+1,n):
            if(i<len(words[k]) or  i<len(words[j])):
                if(i<len(words[k]) and  i<len(words[j])):
                    if words[j][i] >words[k][i]  :
                        if i==0:
                            temp=words[j]
                            words[j]=words[k]
                            words[k]=temp
                        else:
                            if(words[j][0:i]==words[k][0:i]):
                                temp=words[j]
                                words[j]=words[k]
                                words[k]=temp

                elif (i-min(len(words[k]),len(words[j])))==0:
                    if i==0:
                        if(len(words[k])>len(words[j])):
                            if(k<j):
                                temp=words[j]
                                words[j]=words[k]
                                words[k]=temp
                        else:
                            if(k>j):
                                temp=words[j]
                                words[j]=words[k]
                                words[k]=temp
                    else:
                        if(words[j][0:i]==words[k][0:i]):
                            #print(words[j],words[k],i,words[j][0:i],words[k][0:i])
                            if(len(words[k])>len(words[j])):
                                if(k<j):
                                    temp=words[j]
                                    words[j]=words[k]
                                    words[k]=temp
                            else:
                                if(k>j):
                                    temp=words[j]
                                    words[j]=words[k]
                                    words[k]=temp
               # print((words[j][0]))
for word in words:
    print(word)
    None'''

这个题,说简单简单,说难也难。

一个sorted就搞定。

我花了一个多小时,终于写出来了,具体的过程我懒得写了,反正就是一点点调整逻辑。

最后写出来了,但是复杂度太高,最后一个用例没通过。

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务