楼主: Hgcas
跳转到指定楼层
上一主题 下一主题
收起左侧

google onsite

🔗
guoyuezhong 2016-11-2 22:53:59 | 只看该作者
全局:
求第三题思路~
回复

使用道具 举报

🔗
achilleszou 2016-11-4 10:26:35 | 只看该作者
全局:
第四题应该怎么做啊,完全没有思路。==
回复

使用道具 举报

🔗
blood8088 2016-11-4 11:32:21 | 只看该作者
全局:
说说自己第三题的思路:

先排序,然后用DP,DP里面有个贪心的地方,就是最后选出来的m个pair,每个pair里面的数在原有序数组里肯定是相连的,可用传统贪心的反证法证明这个。

然后就用DP找pair,trivial解O(mn)时间和空间,可以用技巧压到O(n)空间。

阿咧,打完之后,感觉跟楼主的思路重复了,楼主轻拍。
回复

使用道具 举报

🔗
achilleszou 2016-11-4 12:35:57 | 只看该作者
全局:
blood8088 发表于 2016-11-4 11:32
说说自己第三题的思路:

先排序,然后用DP,DP里面有个贪心的地方,就是最后选出来的m个pair,每个pair ...

我的思路差不多。

因为每次选出的pair 是相邻的。那么假设选出的pair 是[i, i+1] 那么dp 转移方程为
dp[m][j][l] = min{max{dp[m1][j][i-1]}, dp[m2][i+1][l], diff(i, i+1)} (m1 + m2 = m-1)....
不过感觉复杂度不止o(mn)...
似乎可以继续优化。。。
回复

使用道具 举报

🔗
achilleszou 2016-11-4 12:41:45 | 只看该作者
全局:
achilleszou 发表于 2016-11-4 12:35
我的思路差不多。

因为每次选出的pair 是相邻的。那么假设选出的pair 是 那么dp 转移方程为

貌似下面的dp 更简单。
dp[i][j] = min{dp[i][j-1], max{diff(j, j-1), dp[i-1][j-2]}
回复

使用道具 举报

🔗
achilleszou 2016-11-4 12:44:47 | 只看该作者
全局:
achilleszou 发表于 2016-11-4 12:41
貌似下面的dp 更简单。
dp[j] = min{dp[j-1], max{diff(j, j-1), dp[j-2]}

写错了,应该是:

dp[i][j] = min{dp[i][j-1], max{diff(j, j-1), dp[i-1][j-2]}

dp[i][j] 表示在 下标[0...j] 中取i对筷子。
回复

使用道具 举报

🔗
blood8088 2016-11-4 12:45:14 | 只看该作者
全局:
achilleszou 发表于 2016-11-4 12:35
我的思路差不多。

因为每次选出的pair 是相邻的。那么假设选出的pair 是 那么dp 转移方程为

我觉得是这样。

dp[m][i] = min( dp[m][i + 1],                                      ----> 不选 pair(i, i+1)
                         max(dp[m - 1][i + 2], diff(i, i+1))        ----> 选 pair(i, i+1)


补充内容 (2016-11-4 12:46):
打错,等式左边应该是 dp[m][i];

补充内容 (2016-11-4 12:47):
dp[m][  i  ]
回复

使用道具 举报

🔗
achilleszou 2016-11-4 12:56:56 | 只看该作者
全局:
blood8088 发表于 2016-11-4 12:45
我觉得是这样。

dp[m] = min( dp[m],                                      ----> 不选 pair(i, i+1) ...

你的dp 解法中 dp[m][i] 代表从 [i, ... n] 中 选m双筷子?

我的解法中 dp[m][i] 代表从[0, ... i] 中 选m双筷子。

如果我的理解没错的话,应该两个都行
回复

使用道具 举报

🔗
achilleszou 2016-11-4 12:57:48 | 只看该作者
全局:
achilleszou 发表于 2016-11-4 12:56
你的dp 解法中 dp[m] 代表从  中 选m双筷子?

我的解法中 dp[m] 代表从[0, ... i] 中 选m双筷子。

为啥发帖中 【】【】 被删了。。。。。==|
回复

使用道具 举报

🔗
blood8088 2016-11-4 13:11:01 | 只看该作者
全局:
achilleszou 发表于 2016-11-4 12:57
为啥发帖中 【】【】 被删了。。。。。==|

[     i      ]


好像会被解释成斜体字(italic),类似html什么的吧。
回复

使用道具 举报

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

本版积分规则

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