物料金额拆分

一个订单三门课,C1,C2,C3。课程金额分别为M1,M2,M3元,

订单发了两个物料,G1,G2,分别为N1,N2元。

G1为图书类型。包括C1,C2。

G2为硬件类型,包括C2,C3。

一门课的金额需要分拆在 课程,物料上,使之总和为课程金额。比如C1的M1需要分拆在C1(课拆),G1(G1拆),G2(G2拆),C1金额+G1金额+G2金额=M1元

C2的M2需要分拆到C2(课拆),G1(G1拆),并且 C2金额+G1金额=M2元。

问每门课(C1,C2,C3)应该分拆图书G1多少钱,硬件G2多少钱?设计一个算法解决该问题。

课程物料物料分拆金额
C1G1M1怎么分配C1?
C2G1M2怎么分配C2?
C2G2M2怎么分配C2?
C3G2M3怎么分配C3?
课程课拆物料G1拆物料G2拆总和=课拆+G1拆+G2拆(三者必须均大于0)
C10元M1
C2M2
C30元M3