四大文化赛道完整展开
02-solution/README.md
代码与样例
站内文件视图直接读取仓库内容,Markdown 使用文档排版渲染,其余文本文件保持原始排版,方便校对训练证据链。
文件类型Markdown
10-cases/s2-jh-08-team-roster/02-solution/README.md
主实现文件
src/python/main.py:Python 主实现。src/cpp/main.cpp:C++ 对照实现,与 Python 版本保持同一题意和输出格式。
解法摘要
- 主算法:0/1 背包动态规划 + 并列规则比较
- 实现步骤:用
scores[c]记录恰好使用c小时时的最大积分,并维护对应最少人数。;逐个成员倒序枚举容量,避免同一成员被重复选入。;DP 完成后扫描0..H,按积分、时长、人数三层规则挑出全局最优答案。
样例输入
4 7
2 6
3 8
4 9
5 12
样例输出
best_score=18
used_hours=7
team_size=2
校验命令
python3 02-solution/src/python/main.py < 02-solution/fixtures/sample.inc++ -std=c++17 -O2 02-solution/src/cpp/main.cpp -o /tmp/case-bin && /tmp/case-bin < 02-solution/fixtures/sample.in
输出关键字段
- 第一行输出
best_score=最大总积分。 - 第二行输出
used_hours=达到该积分时的最少总时长。 - 第三行输出
team_size=在前两项都最优时的最少入选人数。