lintcode 打劫房屋3

2021-09-20 10:01:17 字數 1069 閱讀 6608

@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的陣列來儲存這兩種情況的得分。

123

4567

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打劫房屋

原題位址 題目 假設你是乙個專業的竊賊,準備沿著一條街打劫房屋。每個房子都存放著特定金額的錢。你面臨的唯一約束條件是 相鄰的房子裝著相互聯絡的防盜系統,且 當相鄰的兩個房子同一天被打劫時,該系統會自動報警。給定乙個非負整數列表,表示每個房子中存放的錢,算一算,如果今晚去打劫,你最多可以得到多少錢 在...