Prob_Solve 板


LINE

※ 引述《cutekid (可爱小孩子)》之铭言: : 给定一个数字 N (由 1 ~ 9组成) : 其中插入 K 个乘号,使最後相乘的值要最大 : 举例: : N = 746589, K = 2, 最大值 = 7465 x 8 x 9 : N = 1111114, K = 3, 最大值 = 11 x 11 x 11 x 4 : 请问这题除了 C(长度 - 1,K) 暴力搜寻 : 还有什麽比较好的算法吗 : 谢谢 ^_^ 写一下我的想法,有错请告知 这里就先不考虑 overflow 的问题 设计函式 max_product( number, k ) 代表在 number 里插入 k 个乘号 以你第一个例子 要求解 max_product( 746589, 2 ) 它的解是 7 * max_product( 46589, 1 ) 74 * max_product( 6589, 1 ) 746 * max_product( 589, 1 ) 7465 * max_product( 89, 1 ) 这其中一个 74658 * max_product( 9, 1 ) 因为 9 没法插一个乘号进去所以不算 然後每一个结果都可以存下来,递回就不用每次跑 算是 top-down 的 DP 吧,复杂度估计大概是 O( nk ) 递回的终止条件是 k = 0 感觉用 python 会比较好写XD --    ███ ██◣ ██ ███◣ ◥◣ ◢◤ ██ ██ ██ ██ ██ ███████ ███ ██ █████ ◥◣ ██ ███ ████ ◥◣ --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 111.184.18.6
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Prob_Solve/M.1473441321.A.445.html
1F:推 LPH66: top-down 是递回, bottom-up 才叫 DP 09/10 01:19
2F:→ LPH66: 然後 top-down 加记录的叫做笔记法 (memoization) 09/10 01:19
这是我从 Wiki 的页面上找来的 通常许多子问题非常相似,为此动态规划法试图仅仅解决每个子问题一次, 从而减少计算量:一旦某个给定子问题的解已经算出,则将其记忆化(en:memoization) 存储,以便下次需要同一个子问题解之时直接查表。 这种做法在重复子问题的数目关於输入的规模呈指数增长时特别有用。 top-down 的,有用到记忆搜索,应该也可以算 DP 吧?
3F:→ LPH66: 这题要 bottom-up 当然也行, 从 k = 0 开始 09/10 01:20
4F:→ LPH66: 每个 k 枚举所有乘号位置去计算 09/10 01:20
5F:推 suhorng: 不过一楼这种分法碰到有 lazy data structure 的语言就 09/10 01:45
6F:→ suhorng: 很难分清楚了XD 09/10 01:45
7F:→ pttworld: 剪枝条件是什麽,全跑完做法讨论串原po已经讲了。 09/10 03:17
8F:推 FRAXIS: 只要用 memoization 就好了 应该不太需要剪枝吧 09/10 08:05
对啊,有把结果记下来应该就不需要剪枝了吧? 全跑完的作法不是算排列组合吗?这个作法不是暴力搜寻
9F:推 suhorng: 有 memoization 就已经不是全跑完了吧 09/10 08:44
10F:→ pttworld: 请问记忆之前参考条件为何。这一格参考上一层该格的条件 09/10 12:58
※ 编辑: dibery (111.184.18.6), 09/10/2016 17:47:05
11F:推 LPH66: >suhorng 所以 DP 本质还是递回啊, 只是计算顺序的差别而已 09/11 03:31
12F:→ LPH66: lazy eval 就是能够让 top-down 定义的东西能 bottom-up 求 09/11 03:31
13F:→ LPH66: 而 DP 只是我们自己去整理到底 bottom-up 一共要哪些东西 09/11 03:32
14F:→ LPH66: 一口气算完之後堆叠上来而已 09/11 03:32
15F:推 suhorng: 基本上条件就是这个 max_product 的两个参数. 由於每一次 09/13 10:52
16F:→ suhorng: 插入乘号两边都会变小, 所以 max_product 不会循环参考 09/13 10:52
17F:→ suhorng: 本格 max_product 就是 max prefix*max_p..(suffix,num) 09/13 10:53







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:iOS站内搜寻

TOP