Advertisement
jinhuang1102

1033. Moving Stones Until Consecutive

Apr 27th, 2019
176
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.95 KB | None | 0 0
  1. class Solution(object):
  2.     def numMovesStones(self, a, b, c):
  3.         """
  4.        :type a: int
  5.        :type b: int
  6.        :type c: int
  7.        :rtype: List[int]
  8.        """
  9.         ls = []
  10.         ls.append(a)
  11.         ls.append(b)
  12.         ls.append(c)
  13.         ls.sort()
  14.        
  15.  
  16.         a = ls[0]
  17.         b = ls[1]
  18.         c = ls[2]
  19.        
  20.         res = None
  21.        
  22.         if abs(a-c) == 2:
  23.             return [0,0]
  24.        
  25.         # 如果a,b相邻,或者b,c相邻,或者a,b之间差一个值,或者b,c之间差一个值
  26.         # 最小步数都是1。 否则,至少移动两步
  27.         # example: [1,2,6] a,b相邻 | [1,3,4] b,c相邻 | [1,3,5] a,b之间差一个值,或者b,c之间差一个值
  28.         if abs(a-b) == 1 or abs(b-c) == 1 or abs(a-b) == 2 or abs(b-c) == 2:
  29.             mi = 1
  30.         else:
  31.             mi = 2
  32.  
  33.         tmp = (c-b-1) + (b-a-1)
  34.         res = [mi, tmp]
  35.            
  36.         return res
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement