习题9-9

注意前提是最小值最大。很少做两次dp的题。

初始化要细心。

#include<iostream>
#include<cmath>
#include<algorithm>
#include<cstdio>
#include<cstring>
using namespace std; const int INF = 0x3f3f3f3f;
int n, m;
int f[][], g[][];
int p[]; int main(){ while(~scanf("%d%d", &n, &m) && n+m){ for(int i=; i<=m; ++i)
scanf("%d", &p[i]); memset(f, , sizeof(f)); for(int i=; i<=m; ++i){
f[i-][] = INF;
for(int j=; j<=n; ++j){
f[i][j] = f[i-][j];
for(int k=; k<=j; ++k){
f[i][j] = max(f[i][j], min(f[i-][j-k], p[i]/k));
}
}
} memset(g, INF, sizeof(g)); for(int i=; i<=m; ++i){
g[i-][] = ;
for(int j=; j<=n; ++j){
g[i][j] = g[i-][j];
for(int k=; k<=j; ++k){
int s = p[i]/k;
if(s >= f[m][n]){
g[i][j] = min(g[i][j], g[i-][j-k]+p[i]);
}
}
}
} printf("%d %d\n", f[m][n], f[m][n]==?:g[m][n]);
}
return ;
}

最新文章

  1. 3 django系列之Form表单在前端web界面渲染与入库保存
  2. PL/SQL Developer主数据库连接和窗口连接切换
  3. php模拟飞鸽传输协议,代码实现向飞鸽发送消息
  4. MMORPG大型游戏设计与开发(part1 of net)
  5. PAT 1020. 月饼 (25)
  6. Android应用安全之Content Provider安全
  7. DistributedCache小记
  8. WPF--Dispatcher.BeginInvoke()方法使用不当导致UI界面卡死的原因分析
  9. SVN命令详解
  10. HDU 3966 (树链剖分+线段树)
  11. ubuntu下允许root用户ssh远程登录
  12. Unix-Linux编程实践 学习点滴
  13. CSU1321+SPFA
  14. DataTable.ImportRow()与DataTable.Rows.Add()的区别
  15. 为什么 把单一元素的数组放在一个struct的尾端问题
  16. HDU 4421 ZOJ 3656 Bit Magic
  17. (转)示例化讲解RIP路由更新机制
  18. Spring Security 无法登陆,报错:There is no PasswordEncoder mapped for the id “null”
  19. R apply函数 三维 array
  20. ArcGIS案例学习笔记3_1_ArcMap编辑练习

热门文章

  1. kvm_虚拟机迁移
  2. Java使用Jacob将Word、Excel、PPT转化成PDF
  3. linux中目录操作&lt;1&gt;
  4. HDOJ5020【几何】
  5. bzoj 4753: [Jsoi2016]最佳团体【01分数规划+二分+树上背包】
  6. git自动化部署+rsync文件同步
  7. 语句 if
  8. .bashrc等文件中的rc是什么意思
  9. 详解基于linux环境MySQL搭建与卸载
  10. firewall-cmd 使用总结