場景是這樣的:order下有乙個suppler的集合,即乙個訂單下可能有多個**商;supplier下有乙個product的集合,即對乙個**商採購多個產品。
需求是這樣的:算出所有訂購產品的總價
模型這樣:
publicclass
order
public icollectionsuppliers
public
order()
}public
class
supplier
public icollectionproducts
public
supplier()
}public
class
product
public
decimal unitprice
public
int quantity
}
這樣算出總價:
staticvoid main(string
args)
,new product
} },
new supplier ,
new product
} }}}};
var suppliers = orders.select(t =>t.suppliers);
var producttotalprice = suppliers.sum(t => t.sum(p => p.products.sum(o => o.quantity *o.unitprice)));
console.writeline(producttotalprice);
console.readkey();
}
求乙個集合所有可能的子集
增量構造法 一次選出乙個元素放到集合中 include includeusing namespace std const int max 100 int layer 1 遞迴層數 int count1 0 void print subset int n,int a,vector vi,int cur...
輸出乙個集合的所有子集合
面試遇上了這個問題,思量了會,想到用遞迴的方式解決這個問題。回來網上搜尋了下,發現通過二進位制的思想來解決這個問題更容易,下面我把兩種解決方式的思想及原碼分享出來。我們都知道,乙個含n個元素的集合擁有2 n個子集合,並且不難發現,其中每個子集合都是從0到2 n 1 每個數的二進位制格式中0 放棄,1...
演算法作業 求乙個集合中所有子集元素之和
求乙個集合中所有子集元素之和。如 由於集合中元素具有無序性,所以集合中每個元素在子集 現的次數是相同的。這樣的話,問題就簡單了,求所有子集元素的和就可以簡化為求每個元素在子集 現的次數 全集中所有元素的和。全集中所有元素的和好求,就是n n 1 2。集合中任何乙個元素出現的次數,比如1,我們可以這樣...