关注
第四题 暴力递归(40%) bool cmp(pair<int, int> &a, pair<int, int> &b) { if (a.first == b.first) return a.second > b.second; else return a.first > b.first; } void helper(vector<pair<int, int>> x, int max_weight, int height, int &res, int idx, int max_l) { res = max(res, height); if (idx == x.size()) return; if (x[idx].first < max_l && x[idx].second <= max_weight) { if (max_weight - x[idx].second < x[idx].second * 7) helper(x, max_weight - x[idx].second, height + 1, res, idx + 1, x[idx].first); else helper(x, x[idx].second * 7, height + 1, res, idx + 1, x[idx].first); } helper(x, max_weight, height, res, idx + 1, max_l); } int main() { int n; cin >> n; vector<int> L(n), W(n); for (int i = 0; i < n; i++) cin >> L[i]; for (int i = 0; i < n; i++) cin >> W[i]; vector<pair<int, int>> x; for (int i = 0; i < n; i++) x.push_back(make_pair(L[i], W[i])); sort(x.begin(), x.end(), cmp); int res = 0; helper(x, INT_MAX, 0, res, 0, INT_MAX); cout << res << endl; system("pause"); return 0; }
查看原帖
点赞 6
相关推荐
牛客热帖
更多
正在热议
更多
# 运营商笔面经互助 #
195182次浏览 1803人参与
# 被说“做题家”,你的反应是_____? #
4210次浏览 121人参与
# Prompt分享 #
4647次浏览 124人参与
# 你都见过什么样的草台班子? #
13890次浏览 102人参与
# 工作压力大怎么缓解 #
132034次浏览 1134人参与
# 秋招有哪些公司要求提前实习 #
100525次浏览 520人参与
# 米哈游求职进展汇总 #
533255次浏览 2921人参与
# 制造业的秋招小结 #
139076次浏览 2078人参与
# 担心入职之后被发现很菜怎么办 #
275447次浏览 1175人参与
# 找实习记录 #
52212次浏览 669人参与
# AI让你的思考变深了还是变浅了? #
7371次浏览 180人参与
# 打工人锐评公司红黑榜 #
190690次浏览 1048人参与
# 上班苦还是上学苦呢? #
319966次浏览 2050人参与
# 秋招开了,你想投哪些公司呢 #
972484次浏览 11393人参与
# 工作压力大,你会干什么? #
17648次浏览 444人参与
# 简历当中有水分算不算造假? #
156880次浏览 2257人参与
# 邪修省钱套路 #
9823次浏览 358人参与
# 我在牛客求捞 #
101323次浏览 311人参与
# 为了入行xx岗,我学了__ #
8905次浏览 125人参与
# 校招入职后的感受 #
467366次浏览 3636人参与