@toc
在上次打劫完一條街道之後和一圈房屋之後,竊賊又發現了乙個新的可以打劫的地方,但這次所有的房子組成的區域比較奇怪,聰明的竊賊考察地形之後,發現這次的地形是一顆二叉樹。與前兩次偷竊相似的是每個房子都存放著特定金額的錢。你面臨的唯一約束條件是:相鄰的房子裝著相互聯絡的防盜系統,且當相鄰的兩個房子同一天被打劫時,該系統會自動報警。
算一算,如果今晚去打劫,你最多可以得到多少錢,當然在不觸動報警裝置的情況下。
example1
input:
output: 7
explanation:
maximum amount of money the thief can rob = 3 + 3 + 1 = 7.
3/ \
2 3\ \
3 1example2
input:
output: 9
explanation:
maximum amount of money the thief can rob = 4 + 5 = 9.
3/\ \
4 5/ \ \
1 3 1
對於每乙個節點的最大得分只有兩種情況,乙個是拿這個節點的,乙個是不拿這個節點的,用乙個長度為2的陣列來儲存這兩種情況的得分。
1234567
891011
1213
1415
1617
1819
2021
2223
2425
2627
2829
3031
3233
3435
3637
/*** definition of treenode:
* class treenode
* }*/
class solution
vectorrob(treenode *root)
};
-------------end of file
thanks for reading-------------
lintcode 打劫房屋
假設你是乙個專業的竊賊,準備沿著一條街打劫房屋。每個房子都存放著特定金額的錢。你面臨的唯一約束條件是 相鄰的房子裝著相互聯絡的防盜系統,且 當相鄰的兩個房子同一天被打劫時,該系統會自動報警。給定乙個非負整數列表,表示每個房子中存放的錢,算一算,如果今晚去打劫,你最多可以得到多少錢 在不觸動報警裝置的...
LintCode 打劫房屋
描述 假設你是乙個專業的竊賊,準備沿著一條街打劫房屋。每個房子都存放著特定金額的錢。你面臨的唯一約束條件是 相鄰的房子裝著相互聯絡的防盜系統,且 當相鄰的兩個房子同一天被打劫時,該系統會自動報警。給定乙個非負整數列表,表示每個房子中存放的錢,算一算,如果今晚去打劫,你最多可以得到多少錢 在不觸動報警...
lintcode打劫房屋
原題位址 題目 假設你是乙個專業的竊賊,準備沿著一條街打劫房屋。每個房子都存放著特定金額的錢。你面臨的唯一約束條件是 相鄰的房子裝著相互聯絡的防盜系統,且 當相鄰的兩個房子同一天被打劫時,該系統會自動報警。給定乙個非負整數列表,表示每個房子中存放的錢,算一算,如果今晚去打劫,你最多可以得到多少錢 在...