关注
按喜好程度排序, 每次按取的件数和当前花费金额分类记录, 剩下普通零食按完全背包更新就可以了, 这是后来改的, 不一定完全正确, 欢迎讨论..觉得不错的点个赞呗 #include<bits/stdc++.h>
using namespace std;
vector<int> f;
bool cmp(const int& a, const int& b) {
return f[a] < f[b];
}
int main(){
int m, n, v, t;
while (cin >> v >> n) {
vector<int> a(n);
for (int i = 0; i < n; i++) {
cin >> a[i];
}
cin >> m;
f = vector<int>(n, n);
for (int i = 0; i < m; i++) {
cin >> t;
f[t - 1] = i;
}
sort(a.begin(), a.end(), cmp);
vector<vector<int> > dp(v / a[0] + 1, vector<int>(v + 1, 0));
int res = 0;
// 先挑选最喜欢的零食, 无约束
for (int i = 0; i < v / a[0] + 1; i++) {
dp[i][i * a[0]] = 1;
}
// 按喜欢程度依次挑选其他特别喜欢的零食,
for(int i = 1; i < m; i++) {
vector<vector<int>> t = move(dp);
int size = v / a[i] + 1;
dp = vector<vector<int> >(size, vector<int>(v + 1, 0));
for (int j = 1; j < t.size(); j++) {
// 每次取的要比前一种要少
for (int k = min(size - 1, j - 1); k >= 0; k--) {
for (int l = k * a[i]; l <= v; l++){
dp[k][l] = (dp[k][l] + t[j][l - k * a[i]]) % 10000007;
}
}
}
}
// 统计各花费的方案数
vector<int> cur(v + 1, 0);
for (int i = 0; i <= v; i++) {
for (int j = 0; j < dp.size(); j++) {
cur[i] = (cur[i] + dp[j][i]) % 10000007;
}
}
// 按完全背包更新其余零食
for (int i = m; i < n; i++) {
for (int j = a[i]; j <= v; j++) {
cur[j] = (cur[j] + cur[j - a[i]]) % 10000007;
}
}
cout << cur[v] << endl;
}
return 0;
}
查看原帖
点赞 13
相关推荐
02-25 10:55
湛江科技学院 测试工程师
小浪_Coding:1. 个人技能排版太乱, 写的技术栈太浅了, 跟测试,自动化相关的太少; 2. 项目开发类的太简单没有亮点, 算法类的项目建议只放一个,最好有自动化,CI/CD, pipline的项目, 需要更换; 3.整体排版需要优化, SOOB打招呼都需要注意等. 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 你感受到金三银四了嘛? #
22702次浏览 252人参与
# 25届网易互娱暑实进度 #
98874次浏览 768人参与
# 今天你投了哪些公司? #
39773次浏览 880人参与
# 27届求职交流 #
38671次浏览 792人参与
# 春招 / 实习投递,你最焦虑的一件事 #
23932次浏览 542人参与
# Tplink求职进展汇总 #
205985次浏览 946人参与
# 如果给AI员工评绩效,我的答案是…… #
3443次浏览 80人参与
# HR问:你期望的薪资是多少?如何回答 #
82373次浏览 707人参与
# 26届的你们有几段实习? #
169359次浏览 1087人参与
# 找工作,你都让AI帮你做什么? #
2270次浏览 91人参与
# 哪一刻你对工作祛魅了? #
8215次浏览 87人参与
# 26届求职交流 #
19772次浏览 489人参与
# AI时代下,你的岗位要求有什么变化? #
4024次浏览 89人参与
# 虽然0面试,但今天___,夸夸自己 #
1969次浏览 54人参与
# 求职低谷期你是怎么度过的 #
32671次浏览 341人参与
# AI项目实战 #
1896次浏览 80人参与
# 刚工作的你,踩过哪些坑? #
2205次浏览 45人参与
# 查收我的offer竞争力报告 #
282845次浏览 1714人参与
# 今年找实习到底有多难? #
7551次浏览 84人参与
# 一起聊美团 #
345884次浏览 1933人参与
