題目描述
西昂是一名運油商。他通過管道網將煉油廠的有運輸到主儲存裝置。管道呈網形,其中基礎煉油廠是根,主儲存裝置是這棵樹的葉子。管道通過內部連線站連線到各個儲存裝置,管道可以具有不同的傳輸速率[單位時間內的油公升數]。他需要找出在任何給定時間內課通過管道網路傳輸的最大油量。
輸入函式/方法的輸入包括三個引數:
numnode,乙個整數,表示管道網中的站數。
sourcenode,乙個整數,表示管道網中基礎煉油廠的索引。
network,乙個整數列表,其中列表的每個元素包含乙個三元組,表示管道起始和結束站以及其相應的傳輸速率。
輸出返回乙個整數,表示在任何給定時間內課通過網路傳輸的最大油量。
約束條件
3<=numnode<=10^5
1<=sourcenode<=10^5
1<=x<=10^3 x表示管道傳輸速率
**
#include#includeusing namespace std;
int findmaxoil(int numnode, int sourcenode, const int *network, int maxoiltemp)
} if (count == 0)
return maxoil;
}int main() ;
int maxoiltemp = 0;
int maxo = findmaxoil(numnode, sourcenode, network, maxoiltemp);
cout << maxo;
return 0;
}
遞迴分治 求集合最大元
在規模為n的資料元素集合中找出最大元。當n 2時,一次比較就可以找出兩個資料元素的最大元和最小元。當n 2時,可以把n個資料元素分為大致相等的兩半,一半有n 2個資料元素,而另一半有n 2個資料元素。先分別找出各自組中的最大元,然後將兩個最大元進行比較,就可得n個元素的最大元。include usi...
用遞迴方法求n!
求n!可以用遞推方法,即從1開始,乘2,再乘3.一直乘到n。這種方法容易理解,也容易實現。遞推法的特點是從乙個已知的事實出發,按一定規律推出下乙個事實,再從這個新的已知的事實出發,再向下推出乙個新的事實。這是和遞迴不同的。求n!也可以用遞迴方法,即5!4!5,而4!3!4,1!1.可用下面的遞迴公式...
遞迴方法求n 階乘
遞迴的定義 在定義乙個過程或函式時,出現呼叫本過程或者是本函式的成分,稱之為遞迴。通常需要用到遞迴的方法 定義是遞迴的。例如n fibonacci數列問題 資料結構是遞迴的 單鏈表的資料結構,二叉樹的資料結構 問題的求解方式是遞迴的 漢諾塔問題 用遞迴和非遞迴兩種方式求n 問題 include in...