zoukankan      html  css  js  c++  java
  • pku1036Gangsters 强盗进旅馆(动态规划)

    -

    第一种解法:

    dp[i][j]表示在i时间j状态下的最优解,递推公式如下:

    dp[0][0]=0

    dp[0][s]=-inf  1=<s<=k

    dp[t][s]=max(dp[t-1][s-1],dp[t-1][s],dp[t-1][s+1])+{g.p}(g.t=t&&g.s=s)   1=<t<=T         0=<s<=k

    结果:内存超出。。。。。。。。。

    代码如下:

    Code

    解法二:

    首先对强盗排序(按时间),对每

    个强盗编号,算最优值

    公式如下:

    dp[i]=-1表示第i个编号的强盗不能进旅馆

    否则表示而且到这个强盗到来的时间时已经求得的最优值

    dp[i]=max(dp[j]+g[i].p) (0<=j<i<=n且g[i].t-g[j].t>=|g[i].s-g[j].s|)

    代码如下:

     

    Code
  • 相关阅读:
    oracle 索引
    oracle 子查询因子化 浅谈(with的使用)
    大数据的遐想
    数据挖掘(算法概要链接)
    orcale 修改字段属性
    sql 对一张表进行按照不同条件进行多次统计
    oracle dblink
    oracle作业
    SQL效率的几点心得
    提高SQL语句的性能
  • 原文地址:https://www.cnblogs.com/pandy/p/1341757.html
Copyright © 2011-2022 走看看