博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【dp 背包变形】 poj 1837
阅读量:5282 次
发布时间:2019-06-14

本文共 643 字,大约阅读时间需要 2 分钟。

#include 
#include
#include
using namespace std;int dp[21][15001]; //状态数组dp[i][j]int main(int i,int j,int k){ int n; //挂钩数 int g; //钩码数 int c[21]; //挂钩位置 int w[21]; //钩码重量 cin>>n>>g; for(i=1;i<=n;i++) cin>>c[i]; for(i=1;i<=g;i++) cin>>w[i]; memset(dp,0,sizeof(dp)); //达到每个状态的方法数初始化为0 dp[0][7500]=1; //7500为天枰达到平衡状态时的平衡度 for(i=1;i<=g;i++) for(j=0;j<=15000;j++) if(dp[i-1][j]) //优化 for(k=1;k<=n;k++) if(j+w[i]*c[k]<15001) dp[i][ j+w[i]*c[k] ] += dp[i-1][j]; //状态方程 cout<
<

 

转载于:https://www.cnblogs.com/balfish/p/4015250.html

你可能感兴趣的文章
agc007C - Pushing Balls(期望 等差数列)
查看>>
洛谷 P2679 子串
查看>>
Hibernate Foreign Key exception
查看>>
【BZOJ4849】[Neerc2016]Mole Tunnels 模拟费用流
查看>>
【BZOJ2320】最多重复子串 调和级数+hash
查看>>
UNI-APP开发微信公众号(H5)JSSDK使用
查看>>
2057The Lost House
查看>>
springmvc 拦截器,不拦截jsp文件
查看>>
http状态码汇总
查看>>
.net json 和 Datatable 相互转化
查看>>
中位数与顺序统计量
查看>>
Linux 工具套件 —— binutils、readelf
查看>>
C/C++ 工具函数 —— 大端模式和小端模式的互换
查看>>
20 世纪艺术史
查看>>
矩阵分块与矩阵乘法的理解
查看>>
移动端支持横滑效果
查看>>
解决编码问题
查看>>
小明逛超市
查看>>
定义常量的方式
查看>>
创建shell脚本
查看>>