時間限制:c/c++ 1秒,其他語言2秒
空間限制:c/c++ 131072k,其他語言262144k
64bit io format: %lld
xinjun是各類手遊的狂熱粉絲,因隨手一氪、一氪上千而威震工大,現在他迷上了陰陽師。xinjun玩手游有乙個習慣,就是經過層層計算制定出一套方案來使操作利益最大化(因此即使有掃蕩券也不用,故稱聖雄肝帝)。已知陰陽師有n個模式可以操作,模式i有ai種操作,但每種模式每日只能選用一種操作,可以不選。操作j能收益vj,但需要花費體力wj點。xinjun每日擁有體力m點,求他每日最多能得到多少收益。
第一行乙個正整數t(t<=10),表示共有t組資料。對於每組資料,第一行兩個正整數n,m(1<=n,m<=1000)。
接下來n段資料,每段第一行乙個正整數ai(1<=ai<=1000),第二行ai個正整數vj(1<=vj<=1000),第三行ai個正整數wj(1<=wj<=1000)。
每組資料ai之和不大於104。
對每組資料輸出一行,即xinjun每日最多能得到多少收益。示例1
複製
1複製3 10
22 3
3 22
1 13 415
5
9題解 : 這是乙個變形的選和不選的 01揹包問題 , 只不過每一種題目中說有 n 中模式 , 每種模式有ai中操作, 每一種操作可以選也可以不選.變成3重迴圈.
#include #include #include #include #include using namespace std ;
const int max = 1005 ;
vectorv[max] ,w[max] ;
int dp[max] ;
int n , m ;
int main()
for(int i = 1 ; i <=n ; i++)
for(int j = 1 ; j<=a ; j++ )
} memset(dp,0,sizeof(dp));
for(int i = 1 ; i<=n ; i++ )}}
} cout<}
return 0 ;
}
xinjun與陰陽師
xinjun是各類手遊的狂熱粉絲,因隨手一氪 一氪上千而威震工大,現在他迷上了陰陽師。xinjun玩手游有乙個習慣,就是經過層層計算制定出一套方案來使操作利益最大化 因此即使有掃蕩券也不用,故稱聖雄肝帝 已知陰陽師有n個模式可以操作,模式i有ai種操作,但每種模式每日只能選用一種操作,可以不選。操作...
nowcoder xinjun與陰陽師
看似是完全揹包的題目 可以看成是稍微加了種類限制的01揹包 所以三重迴圈解決 第一重是種類 第二重是容量 第三重是每一種中選擇乙個模式不斷更新dp一維陣列 include using namespace std const int n 1000 5 int n,m,dp n vector a n b...
試著在unity實現陰陽師抽卡效果
試著在unity實現陰陽師抽卡效果 之前為了社團活動 demoday,乙個展示社團成員遊戲作品的社團展會 做了乙個 程式。因為是硬核遊戲開發社團舉辦的遊戲展,我為此特地做了乙個陰陽師的抽卡系統如下 由於轉成gif格式不是很清楚,之前也忘了在b站上傳,基本表現效果就是這樣了。螢幕畫線仔細看還是能看到的...