DP找最优配置,(POJ1018)
题目链接:http://poj.org/problem?id=1018
这个DP,我的头都快晕了。
dp[i][j]表示取到第i个设备,宽带为j时的最小价格。
状态转移方程:
dp[i][k]=min(dp[i][k],dp[i-1][k]+p)
输出结果:
for(int i=0;i<=1100;i++){
ans=max(ans,(double)i/dp[n][i]);
}
#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;
const int inf = 0x3f3f3f3f;
int dp[][]; ///dp[i][j]表示搜索到第i个设备,宽带为j时,的最少费用 int main()
{
int T;
scanf("%d",&T);
while(T--)
{
int n;
scanf("%d",&n); for(int i=; i<=n; i++) ///初始化
{
for(int j=; j<; j++)
dp[i][j]=inf;
} ///DP
for(int i=; i<=n; i++)
{
int num;
scanf("%d",&num);
for(int j=; j<=num; j++)
{
int p,b;
scanf("%d%d",&b,&p);
if(i==)
{
dp[][b]=min(dp[][b],p);
}
else
{
for(int k=; k<; k++)
{
if(dp[i-][k]!=inf)
{
if(k<=b)
dp[i][k]=min(dp[i][k],dp[i-][k]+p);
else
dp[i][b]=min(dp[i][b],dp[i-][k]+p);
}
}
}
}
} double ans=;
for(int i=; i<; i++)
{
if(dp[n][i]!=inf)
{
double k=(double)i/dp[n][i];
if(k>ans)
ans=k;
}
}
printf("%.3lf\n",ans);
}
return ;
}
DP找最优配置,(POJ1018)的更多相关文章
- [FJOI2007]轮状病毒 题解(dp(找规律)+高精度)
[FJOI2007]轮状病毒 题解(dp(找规律)+高精度) 标签:题解 阅读体验:https://zybuluo.com/Junlier/note/1335733 没什么好说的,直接把规律找出来,有 ...
- HDU 1028 Ignatius and the Princess III (母函数或者dp,找规律,)
Ignatius and the Princess III Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K ...
- hdu 2604 Queuing dp找规律 然后矩阵快速幂。坑!!
http://acm.hdu.edu.cn/showproblem.php?pid=2604 这题居然O(9 * L)的dp过不了,TLE, 更重要的是找出规律后,O(n)递推也过不了,TLE,一定 ...
- loj6172 Samjia和大树(树形DP+找规律)
题目: https://loj.ac/problem/6172 分析: 首先容易得出这样的dp式子 然后发现后面那个Σ其实是两段区间,可以用总和减去中间一段区间表示,所以只要维护个前缀和就ok了 这样 ...
- poj - 2096 概率dp (找bug)
题意:一个人一天只能找1个bug ,这个bug属于s个子系统中的某一个子系统,属于n种bug 中的某一种 ,求 这个人找出n种bug ,并且s个系统都bug的期望 (每个系统的一定可以找出bug) 一 ...
- Codeforces 1225G - To Make 1(bitset+状压 dp+找性质)
Codeforces 题目传送门 & 洛谷题目传送门 还是做题做太少了啊--碰到这种题一点感觉都没有-- 首先我们来证明一件事情,那就是存在一种合并方式 \(\Leftrightarrow\) ...
- ZOJ-3929 Deque and Balls (DP+找规律)
题目大意:n个数,每个数的大小都在1~n之间.操作n次,第 i 次将第 i 个数放到一个双端队列里面,放到队列两端的概率是相等的.问操作n次之后双端队列中元素满足xi>xi+1的对数的期望,输出 ...
- UVALive - 6575 Odd and Even Zeroes 数位dp+找规律
题目链接: http://acm.hust.edu.cn/vjudge/problem/48419 Odd and Even Zeroes Time Limit: 3000MS 问题描述 In mat ...
- HDU 1081 DP找最大和的矩阵
题目大意: 在一个给定的大矩阵中找一个小型的矩阵,使这个矩阵中的元素和最大 可以先来看下面这个问题: 原来有做过在一个给定的数字序列中找一个最大和子序列,核心代码如下: ]; ]; ; ; int r ...
随机推荐
- 在x64平台上调试依赖于x86的WCF服务
根据微软官方的解释,WCF(之前的版本名为“Indigo”)是使用托管代码建立和运行面向服务(Service Oriented)应用程序的统一框架.它使得开发者能够建立一个跨平台的安全.可信赖.事务性 ...
- jupyter notebook自动补全功能实现
Jupyter notebook使用默认的自动补全是关掉的.要打开自动补全,需修改默认配置. 命令行中输入:ipython profile create 以上命令会在~/.ipython/profil ...
- php程序设计 1,2章节
<?php/** * Created by PhpStorm. * User: DY040 * Date: 2017/9/4 * Time: 10:39 * * * 1: php起源于1995 ...
- phpstrom的xdebug开启和yii2下的分页的链接
phpstrom的xdebug开启 1.修改php.ini文件(修改完重启apaceh) xdebug.remote_enable = onxdebug.idekey= PHPSTROM [注意:远程 ...
- 终极版clearFix——支持IE6+
/*兼容IE6.7*/ /*这段代码非常暴力,from internet,墙裂推荐*/ .clearFix:before,.clearFix:after{ content:""; ...
- vue 组件之间数据传递(七)
1.props:父组件 -->传值到子组件 app.vue是父组件 ,其它组件是子组件,把父组件值传递给子组件需要使用 =>props 在父组件(App.vue)定义一个属性(变量)sex ...
- Mybatis学习笔记16 - bind标签
1.${}拼串进行模糊查询,不安全 示例代码: 接口定义: package com.mybatis.dao; import com.mybatis.bean.Employee; import java ...
- springboot 启动的java进程默默终止
首先说明这是一个灵异事件......... 场景1 :把之前用map实现的缓存用Redis重构,高高兴兴上线更新,10 分钟后,老板告诉我,项目停了,what ??? 像我这么帅气,英俊,聪明的人,更 ...
- Play on Words UVA - 10129 (欧拉回路)
题目链接:https://vjudge.net/problem/UVA-10129 题目大意:输入N 代表有n个字符串 每个字符串最长1000 要求你把所有的字符串连成一个序列 每个字符串的第 ...
- Ordering Tasks UVA - 10305(拓扑排序)
在一个有向图中,对所有的节点进行排序,要求没有一个节点指向它前面的节点. 先统计所有节点的入度,对于入度为0的节点就可以分离出来,然后把这个节点指向的节点的入度减一. 一直做改操作,直到所有的节点都被 ...