https://leetcode.com/problems/binary-trees-with-factors/description/
給你一個全相異且嚴格大於 之整數陣列
則將 , 作為 之 children
求我們可以做多少個這樣的二元樹?
因為數字很大,題目要我們答案再
題目講的是 binary tree,不是 binary search tree,要看仔細
所以左右子樹可以對調,算做不同的 tree
其實呢,仔細品味題目後應該會有股熟悉的感覺
二元樹,所以每次就是抓兩個數字相乘去比較…唉?這題好像 LeetCode 1. Two Sum
啊😮😮😮
沒錯,所以我們這邊也一樣會用到 unordered_map 協助找另一個數字
另外,這題其實還用到了 DP
對於以 為 root 之 binary tree,其可能之組合即:
每個 arr 中的元素都可以自成一顆 binary tree
所以我們 dp 初始值設 1
並且我們知道關係式可以寫成