• 1436. 旅行终点站


    给你一份旅游线路图,该线路图中的旅行线路用数组 paths 表示,其中 paths[i] = [cityAi, cityBi] 表示该线路将会从 cityAi 直接前往 cityBi 。请你找出这次旅行的终点站,即没有任何可以通往其他城市的线路的城市。

    题目数据保证线路图会形成一条不存在循环的线路,因此只会有一个旅行终点站。

    示例 1:

    输入:paths = [["London","New York"],["New York","Lima"],["Lima","Sao Paulo"]]
    输出:"Sao Paulo"
    解释:从 "London" 出发,最后抵达终点站 "Sao Paulo" 。本次旅行的路线是 "London" -> "New York" -> "Lima" -> "Sao Paulo" 。
    示例 2:

    输入:paths = [["B","C"],["D","B"],["C","A"]]
    输出:"A"
    解释:所有可能的线路是:
    "D" -> "B" -> "C" -> "A". 
    "B" -> "C" -> "A". 
    "C" -> "A". 
    "A". 
    显然,旅行终点站是 "A" 。
    示例 3:

    输入:paths = [["A","Z"]]
    输出:"Z"
     

    提示:

    1 <= paths.length <= 100
    paths[i].length == 2
    1 <= cityAi.length, cityBi.length <= 10
    cityAi != cityBi
    所有字符串均由大小写英文字母和空格字符组成。

    class Solution:
        def destCity(self, paths: List[List[str]]) -> str:
            p=[]
            for i in paths:
                for j in i:
                    p.append(j)
            cnt=collections.Counter(p)
            se=[]
            for i in paths:
                for j in i:
                    if cnt[j]==1 and j==i[-1]:
                        return j
            

    class Solution:
        def destCity(self, paths: List[List[str]]) -> str:
            start=list()
            for i in range(len(paths)):
                start.append(paths[i][0])
            for k in range(len(paths)):
                if paths[k][1] not in start:
                    return paths[k][1]

  • 相关阅读:
    POJ 1015 Jury Compromise【DP】
    POJ 1661 Help Jimmy【DP】
    HDU 1074 Doing Homework【状态压缩DP】
    HDU 1024 Max Sum Plus Plus【DP,最大m子段和】
    占坑补题。。最近占的坑有点多。。。
    Codeforces 659F Polycarp and Hay【BFS】
    Codeforces 659E New Reform【DFS】
    Codeforces 659D Bicycle Race【计算几何】
    廖大python实战项目第四天
    廖大python实战项目第三天
  • 原文地址:https://www.cnblogs.com/xxxsans/p/13761798.html
Copyright © 2020-2023  润新知