hdu2639,第K优决策
2024-08-30 02:49:45
在dp问题中如果遇到问题,没有什么是加一维度不能解决的,如果不能,再加一维度。
#include<iostream>
#include<cstring>
#include<cstdio>
#include<cstdlib>
#include<algorithm>
using namespace std; int main()
{
int t;
scanf("%d",&t);
while(t--)
{
int n,v,k;
scanf("%d%d%d",&n,&v,&k);
int dp[v+][k+],w[n],c[n];
for(int i=;i<n;++i)
scanf("%d",&w[i]);
for(int i=;i<n;++i)
scanf("%d",&c[i]); memset(dp,,sizeof(dp));
for(int i=;i<n;++i)
{
int ic = c[i];
int iw = w[i];
for(int iv = v;iv>=ic;--iv)
{
int tempA[k+],tempB[k+];
int ia,ib,ik;
ia = ib = ik = ;
for(;ik<k;++ik)
{
tempA[ia++] = dp[iv][ik];
tempB[ib++] = dp[iv-ic][ik] + iw;
}
tempA[ia] = -;
tempB[ib] = -;
ia = ib = ik = ;
while(ik<k&&(tempA[ia]!=-||tempB[ia]!=-))
{
if(tempA[ia] > tempB[ib])
{
dp[iv][ik] = tempA[ia++];
}
else
{
dp[iv][ik] = tempB[ib++];
}
if(ik== || dp[iv][ik] != dp[iv][ik-])
{
++ik;
}
}
} } printf("%d\n",dp[v][k-]);
}
return ;
}
最新文章
- Debian7下初次尝试Nginx+Uwsgi部署Django开发环境
- Theano3.3-练习之逻辑回归
- espcms列表页ajax获取内容 - 并初始化swiper
- Codeforces Round #354 (Div. 2)-C
- 【iCore3 双核心板_FPGA】实验二十四:Niosii——SDRAM读写实验
- Java 中System里getProperty(something)
- 编译android源码官方教程(3)下载代码
- 使用UI Automation实现自动化测试 --微软提供的控件Pattern
- Eval is Devil-MongoDB master/slave上运行Eval遇到的问题
- Android Context作用
- dubbo 的monitor监视器安装问题——————monitor一直处于正在启动状态
- 利用反射机制设计Dao
- [原]osg模型动画|骨骼动画
- CodeForces1051F LCA + Floyd
- Java泛型、List接口整理
- python3 day03 大纲
- HI3516EV100 RTMP添加音频
- 强制改变css样式优先级
- bzoj 2571: Getting Rid of the Holidays
- eclipse.ini的相关说明