Python constant sol. by case discussion. 88%+ [ With comment ]
Python sol. by case discussion.\n\n---\n\n\nclass Solution:\n    def numMovesStones(self, a: int, b: int, c: int) -> List[int]:\n        \'\'\'\n        Input: 
Python sol. by case discussion.\n\n---\n\n```\nclass Solution:\n    def numMovesStones(self, a: int, b: int, c: int) -> List[int]:\n        \'\'\'\n        Input: original index of three stones\n        Output: (min_moves, max_mvoes) to make three stones consecutive\n        \'\'\'\n        \n        \n        original_place = sorted([a, b, c])\n        # Denote sorted index as A, B, C\n\n        min_move, max_move = 0, 0\n        gap_AB = (original_place[1]-original_place[0]-1)\n        gap_BC = (original_place[2]-original_place[1]-1)\n        \n        if (not gap_AB) and (not gap_BC):\n            # ABC\n            #min_move, max_move = 0, 0\n            return [min_move, max_move]\n        \n        \n        if (not gap_AB) or (not gap_BC):\n\t\t\t# AB_..._C or A_..._BC\n            min_move = 1\n            max_move = gap_AB + gap_BC\n            \n            return [min_move, max_move]\n        \n        else:\n                        \n            if (gap_AB == 1) or (gap_BC == 1):\n                # A_B_..._C or A_..._B_C\n                min_move = 1\n                max_move = gap_AB + gap_BC\n            \n            else:\n\t\t\t\t# A_..._B_..._C\n                min_move = 2\n                max_move = gap_AB + gap_BC\n            \n            return [min_move, max_move]\n```
['Python']