• Food Delivery ZOJ


    Food Delivery

     ZOJ - 3469 

    题意:快递员送外卖,n个客户,起始位置为x,速度为v,每个客户单位时间不满意度增加hi,问最少增加多少不满意度。

    每一个客户可能是从左侧送到或者从右侧送到。

     1 #include <bits/stdc++.h>
     2 using namespace std;
     3 #define CLR(m,a) memset(m,a,sizeof(m))
     4 const int maxn=1010;
     5 const int inf=0x3f3f3f3f;
     6 int dp[maxn][maxn][2];
     7 int sum[maxn];
     8 struct Node{
     9     int x,h;
    10     bool operator <(const Node &a)const {
    11         return x<a.x;
    12     }
    13 }node[maxn];
    14 
    15 int main(){
    16     int n,v,x;
    17     while(scanf("%d%d%d",&n,&v,&x)!=EOF){
    18         CLR(dp,inf);
    19         CLR(sum,0);
    20         node[0].x=x;
    21         node[0].h=0;
    22         for(int i=1;i<=n;i++){
    23             scanf("%d%d",&node[i].x,&node[i].h);
    24         }
    25         sort(node,node+n+1);
    26         sum[0]=node[0].h;
    27         for(int i=1;i<=n;i++) sum[i]=sum[i-1]+node[i].h;
    28         int k;
    29         for(int i=0;i<=n;i++){
    30             if(node[i].x==x){
    31                 dp[i][i][0]=dp[i][i][1]=0;
    32                 k=i;
    33                 break;
    34             }
    35         }
    36         for(int i=k;i>=0;i--){
    37             for(int j=k;j<=n;j++){
    38                 if(i==j) continue;
    39                 dp[i][j][0]=min(dp[i][j][0],dp[i+1][j][0]+(sum[n]-(sum[j]-sum[i]))*(node[i+1].x-node[i].x));
    40                 dp[i][j][0]=min(dp[i][j][0],dp[i+1][j][1]+(sum[n]-(sum[j]-sum[i]))*(node[j].x-node[i].x));
    41                 dp[i][j][1]=min(dp[i][j][1],dp[i][j-1][0]+(sum[n]-(sum[j-1]-sum[i-1]))*(node[j].x-node[i].x));
    42                 dp[i][j][1]=min(dp[i][j][1],dp[i][j-1][1]+(sum[n]-(sum[j-1]-sum[i-1]))*(node[j].x-node[j-1].x));
    43             }
    44         }
    45         printf("%d
    ",min(dp[0][n][0],dp[0][n][1])*v);
    46     }
    47 }
    View Code
  • 相关阅读:
    如何设定Fckeditor的工具栏
    WINDOWS 8
    博弈论
    互联网协议入门
    关于“性”
    两个看似互斥矛盾的法则,在更高的法则上会达到统一
    silverlight后台加载本地图片
    REST(Representational State Transfer表述性状态转移)
    各个搜索引擎网站管理员工具地址
    OAuth
  • 原文地址:https://www.cnblogs.com/yijiull/p/7435041.html
Copyright © 2020-2023  润新知