📣 VIP通行证夏日特惠 限时立减$68
12
返回列表 发新帖
楼主: siriuxy
跳转到指定楼层
上一主题 下一主题
收起左侧

[树/链表/图] 一道似乎用DP也不能解决的题: diamond mine

🔗
33847682 2016-10-12 06:53:49 | 只看该作者
全局:
dukemon7 发表于 2016-10-12 04:19
抱歉前两天没上地里,你就想成是去的时候走两条路,一直走到终点就好了,这样就不难想出来了

就是 开一个三维数组存两条路线各自能取得diamond的最大值 同时要求两个路线不能相交?[row][col1][col2]像这样?
回复

使用道具 举报

🔗
dukemon7 2016-10-12 08:34:30 | 只看该作者
全局:
33847682 发表于 2016-10-12 06:53
就是 开一个三维数组存两条路线各自能取得diamond的最大值 同时要求两个路线不能相交?[row][col1][col2] ...

存两条线一共能取到多少,所以最朴素的是四维,表示两条路走到哪两个点了,这时候的最大值,三维的表示法你需要再想想...你写的这个不行...另外不一定是不能相交,只是相交的时候只能记录一次
回复

使用道具 举报

🔗
33847682 2016-10-12 10:00:53 | 只看该作者
全局:
dukemon7 发表于 2016-10-12 08:34
存两条线一共能取到多少,所以最朴素的是四维,表示两条路走到哪两个点了,这时候的最大值,三维的表示法 ...

哦哦 我懂你的意思了 就是
dp[i1][j1][i2][j2]=max(dp[i1-1][j1][i2][j2],dp[i1][j1-1][i2][j2])+max(dp[i1][j1][i2-1][j2],dp[i1][j1][i2][j2-1]+val[i1][j1]+(i1==i2&&j1==j2)?0:val[i2][j2]
这样对嘛?
回复

使用道具 举报

🔗
yuwang1986s 2016-10-12 12:24:58 | 只看该作者
全局:
DP 可以解决的,经典的dp问题。去top coder看
回复

使用道具 举报

🔗
senior_donkey 2017-10-1 06:36:37 | 只看该作者
全局:
mark下看看
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

>
快速回复 返回顶部 返回列表