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

求大神们给Stock带有fee的解题思路

全局:

2015(10-12月) 码农类General 硕士 全职@meta - Other - 其他  | | Other | 应届毕业生

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看附件。没有帐号?注册账号

x
目前看面经,会遇到buy and sell
您好!
本帖隐藏的内容需要积分高于 188 才可浏览
您当前积分为 0。
使用VIP即刻解锁阅读权限或查看其他获取积分的方式
游客,您好!
本帖隐藏的内容需要积分高于 188 才可浏览
您当前积分为 0。
VIP即刻解锁阅读权限 或 查看其他获取积分的方式
Unlock interview details and practice with AI
Curated Interview Questions from Top Companies
比较好的思路?谢谢!

上一篇:Google MTV 电面+Onsite
下一篇:Palantir 最新 OA 10/15
推荐
akluffy 2015-10-21 01:28:22 | 只看该作者
全局:
您好!
本帖隐藏的内容需要积分高于 100 才可浏览
您当前积分为 0。
使用VIP即刻解锁阅读权限或查看其他获取积分的方式
游客,您好!
本帖隐藏的内容需要积分高于 100 才可浏览
您当前积分为 0。
VIP即刻解锁阅读权限 或 查看其他获取积分的方式
Unlock interview details and practice with AI
Curated Interview Questions from Top Companies
回复

使用道具 举报

推荐
akluffy 2015-10-20 04:31:58 | 只看该作者
全局:
  1. int maxProfix(vector<int> &prices, int transactionFee) {

  2.     int minP = prices[0], maxP = 0;
  3.     int result = 0;
  4.     for(int i = 1; i < prices.size(); ++i) {
  5.         if(prices[i] > maxP) {
  6.             maxP = prices[i];
  7.         } else if(prices[i] < maxP) {
  8.             if(maxP - prices[i] > transactionFee) {
  9.                 if(maxP - minP > transactionFee) {
  10.                     result += maxP - minP - transactionFee;
  11.                     minP = prices[i];
  12.                     maxP = prices[i];
  13.                 }
  14.             } else {
  15.                 if(prices[i] < minP) {
  16.                     minP = prices[i];
  17.                     maxP = prices[i];
  18.                 }
  19.             }
  20.         }
  21.     }
  22.     if(maxP - minP > transactionFee) result += maxP - minP - transactionFee;

  23.     return result;
  24. }


  25. int main(char **argv, int argc)
  26. {

  27.     vector<int> nums1 = {1, 4, 3, 5, 7, 10, 6, 5, 4, 8, 9, 12, 11, 10, 9, 5};
  28.     vector<int> nums2 = {1, 2, 3, 4, 5, 6, 7, 6, 5, 4, 3, 2, 3, 4, 6, 7};
  29.     int result = maxProfix(nums1, 3);
  30.     cout << result << endl;

  31.     return 0;
  32. }
复制代码
回复

使用道具 举报

推荐
cgpzmxcc 2015-10-16 00:46:20 | 只看该作者
全局:
写了一个,不确定是否能cover所有情况,请大家帮忙看看
  1. class Solution {
  2.   
  3.   public int getProfit(int[] prices, int fee) {
  4.     if (prices == null || prices.length == 0) return 0;
  5.     int afterBuy = -prices[0];
  6.     int afterSell = 0;
  7.     for (int i = 1; i < prices.length; i++) {
  8.       int oldBuy = afterBuy;
  9.       int oldSell = afterSell;
  10.       afterBuy = Math.max(oldBuy, oldSell - prices[i]);
  11.       afterSell = Math.max(oldSell, oldBuy + prices[i] - fee);
  12.     }
  13.     return afterSell;
  14.   }
  15.   
  16.   public static void main(String[] args) {
  17.     Solution s = new Solution();
  18.     System.out.println(s.getProfit(new int[]{1, 5, 4, 8, 3}, 3));
  19.   }
  20. }
复制代码
回复

使用道具 举报

🔗
kennynoodlehous 2015-10-16 01:10:26 | 只看该作者
全局:
buy stock i 还是 II啊?
回复

使用道具 举报

🔗
 楼主| LosivE 2015-10-16 02:21:03 | 只看该作者
全局:
majiamajia 发表于 2015-10-16 01:10
buy stock i 还是 II啊?

应该是II,不限制交易次数,但是每次卖出就会有一个定额的费用。
回复

使用道具 举报

🔗
坐看云起 2015-10-16 02:24:42 | 只看该作者
全局:
还是可以根据IV,给出有gap,有fee的万能解法吧?转移方程改一改就是了
回复

使用道具 举报

🔗
 楼主| LosivE 2015-10-16 03:10:03 | 只看该作者
全局:
坐看云起 发表于 2015-10-16 02:24
还是可以根据IV,给出有gap,有fee的万能解法吧?转移方程改一改就是了

IV里不是定下了最多交易次数么,那这里就直接把它设成总共的天数么?
回复

使用道具 举报

🔗
坐看云起 2015-10-16 03:30:32 | 只看该作者
全局:
LosivE 发表于 2015-10-16 03:10
IV里不是定下了最多交易次数么,那这里就直接把它设成总共的天数么?

对的,IV可以引伸出很多万能解法:天数上限,再次购买间隔,还有交易费用
回复

使用道具 举报

🔗
mileschen2008 2015-10-16 12:49:27 | 只看该作者
全局:
坐看云起 发表于 2015-10-16 03:30
对的,IV可以引伸出很多万能解法:天数上限,再次购买间隔,还有交易费用

能不能说说思路?感觉不好弄啊,这种general的情况
回复

使用道具 举报

🔗
坐看云起 2015-10-17 01:06:14 | 只看该作者
全局:
您好!
本帖隐藏的内容需要积分高于 100 才可浏览
您当前积分为 0。
使用VIP即刻解锁阅读权限或查看其他获取积分的方式
游客,您好!
本帖隐藏的内容需要积分高于 100 才可浏览
您当前积分为 0。
VIP即刻解锁阅读权限 或 查看其他获取积分的方式
Unlock interview details and practice with AI
Curated Interview Questions from Top Companies
回复

使用道具 举报

🔗
getway32 2015-10-17 08:28:43 | 只看该作者
全局:
您好!
本帖隐藏的内容需要积分高于 100 才可浏览
您当前积分为 0。
使用VIP即刻解锁阅读权限或查看其他获取积分的方式
游客,您好!
本帖隐藏的内容需要积分高于 100 才可浏览
您当前积分为 0。
VIP即刻解锁阅读权限 或 查看其他获取积分的方式
Unlock interview details and practice with AI
Curated Interview Questions from Top Companies
回复

使用道具 举报

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

本版积分规则

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