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. ruby 正则表达式

    Ruby学习笔记-正则表达式 Posted on 2011-11-29 17:55 Glen He 阅读(4998) 评论(0) 编辑 收藏 1.创建正则表达式 a) reg1 = /^[a-z]*$ ...

  2. UVA - 11954 Very Simple Calculator 【模拟】

    题意 模拟二进制数字的位运算 思路 手写 位运算函数 要注意几个坑点 一元运算符的优先级 大于 二元 一元运算符 运算的时候 要取消前导0 二元运算符 运算的时候 要将两个数字 数位补齐 输出的时候 ...

  3. java.util.ResourceBundle国际化用法详解

    java.util.ResourceBundle国际化用法详解 初识国际化和ResourceBundle 这个类主要用来解决国际化和本地化问题.国际化和本地化可不是两个概念,两者都是一起出现的.可以说 ...

  4. SDUT OJ 1479 数据结构实验之栈:行编辑器

    数据结构实验之栈:行编辑器 Time Limit: 1000ms   Memory limit: 65536K  有疑问?点这里^_^ 题目描述  一个简单的行编辑程序的功能是:接受用户从终端输入的程 ...

  5. Spring Boot2.0之整合事物管理

    首先Spring 事务分类 1.声明事务  原理:基于编程事务的 2.编程事务  指定范围 扫包去解决 3.事务原理:AOP技术   通过环绕通知进行了拦截 使用Spring 事务注意事项: 不要tr ...

  6. Contiki Network Stack

    一.协议栈 主要有两大网络协议栈,uIP和Rime这两大协议栈(network stack): The uIP TCP/IP stack, which provides us with IPv4 ne ...

  7. Java里的阻塞队列

    JDK7提供了7个阻塞队列,如下: ArrayBlockingQueue  : 一个数组结构组成的有界阻塞队列. LinkedBlockingQueue : 一个由链表结构组成的有界阻塞队列 . Pr ...

  8. CI框架上传csv文件

    今天遇到在用CI框架上传csv文件时报错问题: The filetype you are attempting to upload is not allowed. 是类型不允许,想到CI框架的conf ...

  9. linux 下errno各个值的意义(转) errno.h

    strerror(errno):获取errno对应的错误 查看错误代码errno是调试程序的一个重要方法.当linux C api函数发生异常时,一般会将errno变量(需include errno. ...

  10. CodeForces - 660F:Bear and Bowling 4(DP+斜率优化)

    Limak is an old brown bear. He often goes bowling with his friends. Today he feels really good and t ...