class Solution(object):
def rob(self, nums):
"""
:type nums: List[int]
:rtype: int
"""
if len(nums) == 1:
return nums[0]
prev = 0
cur = 0
for i in range(0, len(nums)-1):
temp = cur
cur = max(nums[i]+prev, cur)
prev = temp
prev2 = 0
cur2 = 0
for i in range(1, len(nums)):
temp = cur2
cur2 = max(nums[i]+prev2, cur2)
prev2 = temp
return max(cur, cur2)