码迷,mamicode.com
首页 > 其他好文 > 详细

646. Maximum Length of Pair Chain 对链最大长度

时间:2018-01-20 00:22:09      阅读:214      评论:0      收藏:0      [点我收藏+]

标签:ted   cond   order   ever   title   exp   longest   fas   output   

 You are given n pairs of numbers. In every pair, the first number is always smaller than the second number.

Now, we define a pair (c, d) can follow another pair (a, b) if and only if b < c. Chain of pairs can be formed in this fashion.

Given a set of pairs, find the length longest chain which can be formed. You needn‘t use up all the given pairs. You can select pairs in any order.

Example 1:

Input: [[1,2], [2,3], [3,4]]
Output: 2
Explanation: The longest chain is [1,2] -> [3,4]

Note:

  1. The number of given pairs will be in the range [1, 1000].

  1. class Solution:
  2. def findLongestChain(self, pairs):
  3. """
  4. :type pairs: List[List[int]]
  5. :rtype: int
  6. """
  7. res = 0
  8. sortedPairs = sorted(pairs, key=lambda x: (x[0], x[1]))
  9. pre = -2147483648
  10. for pair in sortedPairs:
  11. if pre < pair[0]:
  12. res += 1
  13. pre = pair[1]
  14. elif pair[1] < pre:
  15. pre = pair[1]
  16. return res
  17. #pairs = [[1, 2], [2, 3], [5, 2], [3, 4], [3, 10]]
  18. pairs = [[-6, 9], [1, 6], [8, 10], [-1, 4], [-6, -2], [-9, 8], [-5, 3], [0, 3]]
  19. s = Solution()
  20. res = s.findLongestChain(pairs)
  21. print(res)






646. Maximum Length of Pair Chain 对链最大长度

标签:ted   cond   order   ever   title   exp   longest   fas   output   

原文地址:https://www.cnblogs.com/xiejunzhao/p/8319172.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!