Open cup #2
2024-10-07 02:24:36
A
D:用前面的H去消去后面的K 然后求最长连续的M
F:在每一列/行里面求最大的数然后组成最大的和ans[]里的比求出最大的
L:并查集
J:DP背锅题 01背包 先求出M种里每种的size和last然后先last最大的放在最后 然后背包DP
long long solve(Group* groups) {
long long* x = new long long[n + ];
for (int i=; i<n+; i++) x[i] = INFINITY;
x[] = ; // all groups but the last; the last always goes
// into "last" bus
for (int i=; i<m-; i++)
for (int j=n-groups[i].size; j>=; j--) {
long long time = max(x[j], groups[i].time);
x[j+groups[i].size] = min(time, x[j+groups[i].size]);
} //for (int i=0; i<=n; i++) cout << x[i] << " ";
//cout << endl; long long answer = -;
for (int i=; i<=k; i++)
if (n - i <= k) if (x[i] < INFINITY) {
long long total = x[i] * i + (n - i) * groups[m-].time;
if (answer == - || total < answer)
answer = total;
} return answer;
}
X[i]表示有i人在一个飞机上时的最小last
然后i从0枚举到k如果剩下的不大于K就统计total 更新答案
最新文章
- Quick Apps for Sharepoint小型BI解决方案
- sftp上传 - 待完
- PhpExcel中文帮助手册|PhpExcel使用方法
- HTML常用标签与表格标签
- [leetcode]_Roman to Integer
- 网上下载的 java开源项目 如何 打jar包
- Android - 软件自动更新的实现(转)
- Linux学习3——磁盘文件管理系统与压缩和打包操作
- JS使用合并数组
- Exchange Server 2007的即将生命周期,您的计划是?
- SpringCloud的Hystrix(一) 一个消费者内的两个服务监控
- psnr的定义和python实现
- Java第一次实训
- AI学习吧
- jmeter4.0 执行jmeter_server.bat报错
- vue tab切换
- denyhost部署
- InfluxDB配置文件详解
- 【LOJ】#6433. 「PKUSC2018」最大前缀和
- Guideline 2.1 - Information Needed