d:課程大作業
輸入輸入包含若干測試樣例。
輸入的第一行是乙個正整數t,代表測試樣例數目。
對於每組測試樣例,第一行為正整數n(1 <= n <= 15)代表課程數目。
接下來n行,每行包含乙個字串s(不多於50個字元)代表課程名稱和兩個整數d(代表大作業截止時間)和c(完成該大作業需要的時間)。
注意所有的課程在輸入**現的順序按照字典序排列。
輸出對於每組測試樣例,請輸出最小的扣分以及相應的課程完成的順序。
如果最優方案有多個,請輸出字典序靠前的方案。
樣例輸入23
computer 3 3
english 20 1
math 3 2
3computer 3 3
english 6 3
math 6 3
樣例輸出
2computer
math
english
3computer
english
math
#include
#include
#include
using
namespace std;
const
int max (
1<<16)
;int d[16]
;int c[16]
;int sum[max]
;//當前做法下完成任務總用時
string name[16]
;string ans[max]
;//用來儲存做法
int dp[max]
;//當前做法下的最少扣分
intf
(int i,
int j)
intmain()
for(
int i =
1; i <
1<}//得到所有用時,下面開始更新扣分
for(
int i =
0; i <
1<)//初始化答案串
dp[0]
=0;for
(int i =
1; i <
1<) dp[i]
= dp[i ^(1
<< j)]+
f(sum[i]
, d[j]);
}}} cout << dp[(1
<< n )-1
]<< endl;
cout << ans[(1
<< n)-1
];}return0;
}
c語言大作業 c語言課程設計,大作業
c語言課程設計,大作業 本人是一名211大學軟體工程專業的大三學生,6 7月份幫助了很多學弟學妹完成了課程設計,大作業。本人 質量高,講誠信,承接c語言,c 課程設計,大作業以及資料結構的內容。下面是c語言通訊錄的部分源 include include includetypedef struct a...
課程大作業 百練 4149
該題的題意比較難以理解,並且問題難以分析,其中的要點就是,包含j這個點的狀態的時間總值是否大於j這個點的截止時間,如果小於則扣分數為0,大於則差值就為扣分數 includeusing namespace std const int max 1 16 int dp max 把每乙個狀態中課程完成的最少...
大作業感悟
作為本次大作業的組長,看著專案從呱呱墜地到瓜熟蒂落,就像看著自己的孩紙長大一樣。心中感慨萬千,成長的過程總是快樂與痛苦並行,喜悅與煩惱同在的。從兩個星期前的頭腦風暴到前期的精心設計 中期的分工實施再到後期的測試與優化。每一步走的都讓 連忘返,每一步都讓人記憶猶新。在這兩個星期中,我們不僅得到了知識和...