Food Delivery

ZOJ - 3469

题意:外卖送饭给N个顾客,要求他们不满度和最小,没人不满度=等待时间*耐心值

#include<cstring>
#include<cstdio>
#include<algorithm>
using namespace std;
#define maxn 1010
int n,x,v,dp[maxn][maxn][],sum[maxn];
struct node{
int x,b;
}a[maxn];
int cmp(node u,node v){
return u.x<v.x;
}
int main(){
while(scanf("%d%d%d",&n,&v,&x)!=EOF){
memset(dp,/,sizeof(dp));
memset(a,,sizeof(a));
for(int i=;i<=n;i++)scanf("%d%d",&a[i].x,&a[i].b);
n++;a[n].x=x,a[n].b=;
sort(a+,a+n+,cmp);int tmp;
for(int i=;i<=n;i++)sum[i]=sum[i-]+a[i].b;
for(int i=;i<=n;i++)if(a[i].x==x){tmp=i;break;}
dp[tmp][tmp][]=,dp[tmp][tmp][]=;
for(int i=tmp;i>=;i--){
for(int j=tmp;j<=n;j++){
dp[i][j][]=min(dp[i][j][],dp[i+][j][]+(sum[n]-sum[j]+sum[i])*(a[i+].x-a[i].x));
dp[i][j][]=min(dp[i][j][],dp[i+][j][]+(sum[n]-sum[j]+sum[i])*(a[j].x-a[i].x));
dp[i][j][]=min(dp[i][j][],dp[i][j-][]+(sum[n]-sum[j-]+sum[i-])*(a[j].x-a[i].x));
dp[i][j][]=min(dp[i][j][],dp[i][j-][]+(sum[n]-sum[j-]+sum[i-])*(a[j].x-a[j-].x));
}
}
printf("%d\n",min(dp[][n][],dp[][n][])*v);
}
}

ZOJ3469 Food Delivery的更多相关文章

  1. ZOJ3469 Food Delivery —— 区间DP

    题目链接:https://vjudge.net/problem/ZOJ-3469 Food Delivery Time Limit: 2 Seconds      Memory Limit: 6553 ...

  2. ZOJ3469 Food Delivery 区间DP

    题意:有一家快餐店送外卖,现在同时有n个家庭打进电话订购,送货员得以V-1的速度一家一家的运送,但是每一个家庭都有一个不开心的值,每分钟都会增加一倍,值达到一定程度,该家庭将不会再订购外卖了,现在为了 ...

  3. 费用提前计算相关的DP(BZOJ2037,POJ3042,ZOJ3469)

    在刷ZeroClock大神的区间DP专辑,遇见了ZOJ3469,完全不无从下手,然后有人说是论问题,推荐看徐源盛<对一类动态规划问题的研究>这篇论文,果断得膜拜了下,感觉好神奇,可以把未来 ...

  4. 各种DP总结

    一.数位DP 1.含有或不含某个数“xx”: HDU3555 Bomb HDU2089 不要62 2.满足某些条件,如能整除某个数,或者数位上保持某种特性: HDU3652 B-number Code ...

  5. 《Continuous Delivery》 Notes 1: The problem of delivering software

    What is "Deployment pipeline"? A deployment pipeline is an automated implementation of you ...

  6. zoj 3469 Food Delivery 区间dp + 提前计算费用

    Time Limit: 2 Seconds      Memory Limit: 65536 KB When we are focusing on solving problems, we usual ...

  7. 【IOS笔记】Event Delivery: The Responder Chain

    Event Delivery: The Responder Chain  事件分发--响应链 When you design your app, it’s likely that you want t ...

  8. Content Delivery Network

    Coding Standards & Best Practices 7 Reasons to use a Content Delivery Network CDN公共库汇总

  9. codeforces 653D D. Delivery Bears(二分+网络流)

    题目链接: D. Delivery Bears time limit per test 2 seconds memory limit per test 256 megabytes input stan ...

随机推荐

  1. iOS 多语言支持

    如果app将来面向国际化,比如说中国需要使用,美国也需要使用,此时就需要考虑app支持多国语言 具体方式如下 首先在Supporting Files中新建 Strings 起名: Localizabl ...

  2. 冷门PHP函数汇总

    概述 整理一些日常生活中基本用不到的PHP函数,也可以说在框架内基本都内置了,无需我们去自行使用的函数.量不多.后续在日常开发中如遇到更多的冷门,会更新本文章 sys_getloadavg 获取系统的 ...

  3. 笔记 jsp/ajax/js/jquery/html5/css+div->table

    1. jsp 1).jsp(39,33)   equal symbol expected: 这个异常是说第39行有 " '( 冒号单引号)问题 2)${map[key]}  map和key换 ...

  4. 经典数学问题<手电过河问题>的动态解法--问题规模扩展至任意大小

    非常有趣的一件事是今天在TopCoder的1000分题里面发现了这道经典数学问题. Notes           -                   In an optimal solution ...

  5. 【html学习整理】meta,img,表格,表单

    meta标签: 作用: 给搜索引擎用 . 告诉浏览器是什么编码 <meta charset="UTF-8"> <meta name="keywords& ...

  6. legend2---开发日志15(功能需求明确,设计好类和结构的好处是)

    legend2---开发日志15(功能需求明确,设计好类和结构的好处是) 一.总结 一句话总结: 极快简化编程,节约大量时间 1.多个类型的物品,比如商店和寻宝的丹药,装备,特性书,英雄石等等 应该怎 ...

  7. mybatis传递多个参数值(转)

    Mybatis传递多个参数   ibatis3如何传递多个参数有两个方法:一种是使用Map,另一种是使用JavaBean. <!--      使用HashMap传递多个参数      para ...

  8. linux命令学习笔记(52):ifconfig命令

    许多windows非常熟悉ipconfig命令行工具,它被用来获取网络接口配置信息并对此进行修改.Linux系统拥有 一个类似的工具,也就是ifconfig (interfaces config).通 ...

  9. OpenCV——高斯模糊与毛玻璃特效

    // define head function #ifndef PS_ALGORITHM_H_INCLUDED #define PS_ALGORITHM_H_INCLUDED #include < ...

  10. 每天一个Linux命令(2):ls命令

    版权声明 更新:2017-04-26博主:LuckyAlan联系:liuwenvip163@163.com声明:吃水不忘挖井人,转载请注明出处! 1 文章介绍 本文介绍了Linux下命令ls. 2 开 ...