0921 去哪儿旅行笔试

三道编程,都是核心代码真香,比某某题都写不清,还要自己处理输入的好多了
第一题:比较版本号 100
class Solution:
    def compareVersion(self , version1: str, version2: str) -> int:
        # write code here
        nums1 = version1.split('.')
        nums2 = version2.split('.')
        if not nums1[-1].isdigit():
              nums1 = nums1[:-1]
        if not nums2[-1].isdigit():
              nums2 = nums2[:-1]
        n1, n2 = len(nums1), len(nums2)
        while n1 < 3:
              nums1 += ["0"]
              n1 += 1
        while n2 < 3:
              nums2 += ["0"]
              n2 += 1
        #print(nums1,nums2)
        for i in range(3):
            if nums1[i] < nums2[i]:
                return -1
            elif nums1[i] > nums2[i]:
                return 1
        return 0
第二题 邻接矩阵计算从城市0到城市n-1 中转旅行的最小费用,没找出遗漏了什么情况,只过了60,请大佬指点。
def dfs(i,res,dep):
    if dep>len(matrix):return 1e9
    if i == len(matrix)-1:return res
    tmp = 1e9
    for j in range(len(matrix)):
        if matrix[i][j]==-1 or i==j:continue
        tmp = min(tmp, dfs(j,res+matrix[i][j],dep+1))
    return tmp
dfs(0,0,0)
第三题 执行编辑指令的结果abcd\delete{2} ->ab(删除指令前2个字符) 过了82,请大佬指正。
\\输出字符\
指令错误,则截断输出abc\d ->abc
class Solution:
    def transform(self , input: str) -> str:
        # write code here
        n = len(input)
        l,r = 0,0
        while l < n and r < n:
            while l < n and input[l].isalpha(): l += 1
            if l<n-1 and not input[l+1].isalpha(): 
                input = input[:l+1]+input[l+2:]
                l+=1
                n -= 1
                continue 
            if input[l:l+8]=='\delete{' and input[l+8].isdigit() and input[l+9]=='}':
                num = int(input[l+8])
                if l>= num:
                    input = input[:l-num] + input[l+10:]
                    n -= 10 + num
                else:
                    input = input[l+10:]
                    n -= 10 + l
            else:
                return input[:l]
        return input





全部评论
来个大帅哥贴一下第三题吧
点赞 回复 分享
发布于 2022-09-23 11:41 山东
请问第一题什么思路啊,感觉只比较前边数字串的字典序就可以呀,其他的情况是什么呀
点赞 回复 分享
发布于 2022-09-22 18:02 上海
分数一模一样,二三题搞不懂为什么a不了
点赞 回复 分享
发布于 2022-09-21 22:52 北京
第二题迪杰斯特拉 最短路径 标准的领接矩阵
点赞 回复 分享
发布于 2022-09-21 21:49 贵州

相关推荐

05-23 20:31
已编辑
武汉大学 Java
内向的柠檬精在研究求职打法:注意把武大标粗标大 本地你俩不是乱杀
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
2
8
分享

创作者周榜

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