当前位置: 首页 > news >正文

德州网站网站建设恒峰网站建设问题

德州网站网站建设,恒峰网站建设问题,手机开网店的免费平台,中国商务商会官方网站Leetcode Test 123 买卖股票的最佳时机Ⅲ(10.3) 给定一个数组#xff0c;它的第 i 个元素是一支给定的股票在第 i 天的价格。 设计一个算法来计算你所能获取的最大利润。你最多可以完成 两笔 交易。 **注意#xff1a;**你不能同时参与多笔交易#xff08;你必须在再次购…Leetcode Test 123 买卖股票的最佳时机Ⅲ(10.3) 给定一个数组它的第 i 个元素是一支给定的股票在第 i 天的价格。 设计一个算法来计算你所能获取的最大利润。你最多可以完成 两笔 交易。 **注意**你不能同时参与多笔交易你必须在再次购买前出售掉之前的股票。 提示 1 prices.length 1050 prices[i] 105 【动态规划】 int maxProfit(int* prices, int pricesSize){//buy1: buy once//sell1: buy once sell once//buy2: buy twice sell once//sell2: buy twice sell twice//buy1[i] max(buy1[i-1], -prices[i])//sell1[i] max(sell1[i-1], buy1[i-1]prices[i])//buy2[i] max(buy2[i], sell1[i]-prices[i])//sell2[i] max(sell2[i], buy2[i-1]prices[i])//buy1[0]-prices[0] 同一天买//sell1[0]0 同一天买卖//buy2[0]-princes[0] 同一天买卖买//sell2[0]0 同一天买卖买卖int buy1-prices[0],sell10;int buy2buy1,sell2sell1;for(int i1;ipricesSize;i){buy1fmax(buy1,-prices[i]);sell1fmax(sell1,buy1prices[i]);buy2fmax(buy2,sell1-prices[i]);sell2fmax(sell2,buy2prices[i]);}return sell2; }188 买卖股票的最佳时机Ⅳ(10.4) 给你一个整数数组 prices 和一个整数 k 其中 prices[i] 是某支给定的股票在第 i 天的价格。 设计一个算法来计算你所能获取的最大利润。你最多可以完成 k 笔交易。也就是说你最多可以买 k 次卖 k 次。 **注意**你不能同时参与多笔交易你必须在再次购买前出售掉之前的股票。 提示 1 k 1001 prices.length 10000 prices[i] 1000 【动态规划】universal version int maxProfit(int k, int* prices, int pricesSize){int npricesSize;int f[k2][2];//[0]代表sell[1]代表buymemset(f,-0x3f,sizeof(f));for(int j1;jk2;j){f[j][0]0;//先把sell全部赋值为0}for(int i0;in;i){for(int j1;jk2;j){f[j][0]fmax(f[j][0],f[j][1]prices[i]);f[j][1]fmax(f[j][1],f[j-1][0]-prices[i]);}}return f[k1][0]; }309 买卖股票的最佳时机含冷冻期(10.5) 给定一个整数数组prices其中第 prices[i] 表示第 *i* 天的股票价格 。 设计一个算法计算出最大利润。在满足以下约束条件下你可以尽可能地完成更多的交易多次买卖一支股票: 卖出股票后你无法在第二天买入股票 (即冷冻期为 1 天)。 **注意**你不能同时参与多笔交易你必须在再次购买前出售掉之前的股票。 提示 1 prices.length 50000 prices[i] 1000 【动态规划】 int maxProfit(int* prices, int pricesSize){//0手里有票今天可以卖//1前一天冻结今天不能买//2手里没票今天可以买int npricesSize;int f[n][3];f[0][0]-prices[0];f[0][1]f[0][2]0;for(int i1;in;i){f[i][0]fmax(f[i-1][0],f[i-1][2]-prices[i]);//i-1天有票或i-1天没票时买了票f[i][1]f[i-1][0]prices[i];//一定是i-1天买了票所以i天才会冻结f[i][2]fmax(f[i-1][2],f[i-1][1]);//i-1天没票或冻结期刚结束}return fmax(f[n-1][2],f[n-1][1]);//返回最后一天手里没票或最后一天在冻结期 }714 买卖股票的最佳时机含手续费(10.6) 给定一个整数数组 prices其中 prices[i]表示第 i 天的股票价格 整数 fee 代表了交易股票的手续费用。 你可以无限次地完成交易但是你每笔交易都需要付手续费。如果你已经购买了一个股票在卖出它之前你就不能再继续购买股票了。 返回获得利润的最大值。 **注意**这里的一笔交易指买入持有并卖出股票的整个过程每笔交易你只需要为支付一次手续费。 提示 1 prices.length 5 * 1041 prices[i] 5 * 1040 fee 5 * 104 【动态规划】 int maxProfit(int* prices, int pricesSize, int fee){int npricesSize;int f[n1][2];memset(f,0,sizeof(f));f[0][1]INT_MIN/2;for(int i0;in;i){f[i1][0]fmax(f[i][0],f[i][1]prices[i]-fee);f[i1][1]fmax(f[i][1],f[i][0]-prices[i]);}return f[n][0]; }901 股票价格跨度(10.7) 设计一个算法收集某些股票的每日报价并返回该股票当日价格的 跨度 。 当日股票价格的 跨度 被定义为股票价格小于或等于今天价格的最大连续日数从今天开始往回数包括今天。 例如如果未来 7 天股票的价格是 [100,80,60,70,60,75,85]那么股票跨度将是 [1,1,1,2,1,4,6] 。 实现 StockSpanner 类 StockSpanner() 初始化类对象。int next(int price) 给出今天的股价 price 返回该股票当日价格的 跨度 。 提示 1 price 105最多调用 next 方法 104 次 【单调栈】这东西还是cpp好用… class StockSpanner {stackpairint, int st;int cur_day -1; // 第一个 next 调用算作第 0 天 public:StockSpanner() {st.emplace(-1, INT_MAX); // 这样无需判断栈为空的情况}int next(int price) {while (price st.top().second) {st.pop(); // 栈顶数据后面不会再用到了因为 price 更大}int ans cur_day - st.top().first;st.emplace(cur_day, price);return ans;} };/*** Your StockSpanner object will be instantiated and called as such:* StockSpanner* obj new StockSpanner();* int param_1 obj-next(price);*/2034 股票价格波动(10.8) 给你一支股票价格的数据流。数据流中每一条记录包含一个 时间戳 和该时间点股票对应的 价格 。 不巧的是由于股票市场内在的波动性股票价格记录可能不是按时间顺序到来的。某些情况下有的记录可能是错的。如果两个有相同时间戳的记录出现在数据流中前一条记录视为错误记录后出现的记录 更正 前一条错误的记录。 请你设计一个算法实现 更新 股票在某一时间戳的股票价格如果有之前同一时间戳的价格这一操作将 更正 之前的错误价格。找到当前记录里 最新股票价格 。最新股票价格 定义为时间戳最晚的股票价格。找到当前记录里股票的 最高价格 。找到当前记录里股票的 最低价格 。 请你实现 StockPrice 类 StockPrice() 初始化对象当前无股票价格记录。void update(int timestamp, int price) 在时间点 timestamp 更新股票价格为 price 。int current() 返回股票 最新价格 。int maximum() 返回股票 最高价格 。int minimum() 返回股票 最低价格 。 提示 1 timestamp, price 109updatecurrentmaximum 和 minimum 总 调用次数不超过 105 。currentmaximum 和 minimum 被调用时update 操作 至少 已经被调用过 一次 。 【hash 有序集合】 class StockPrice {int maxTimestamp;unordered_mapint,int timePriceMap;multisetint prices; public:StockPrice() {this-maxTimestamp0;//初始化对象当前无股票价格记录}void update(int timestamp, int price) {//在时间点 timestamp 更新股票价格为 pricemaxTimestampmax(maxTimestamp,timestamp);int prevPricetimePriceMap.count(timestamp) ? timePriceMap[timestamp] : 0;//上次的价格timePriceMap[timestamp]price;//这次的价格if(prevPrice0){//如果有上次的auto itprices.find(prevPrice);if(it!prices.end()){prices.erase(it);}}prices.emplace(price);}int current() {return timePriceMap[maxTimestamp];}int maximum() {return *prices.rbegin();}int minimum() {return *prices.begin();} };/*** Your StockPrice object will be instantiated and called as such:* StockPrice* obj new StockPrice();* obj-update(timestamp,price);* int param_2 obj-current();* int param_3 obj-maximum();* int param_4 obj-minimum();*/2578 最小和分割(10.9) 给你一个正整数 num 请你将它分割成两个非负整数 num1 和 num2 满足 num1 和 num2 直接连起来得到 num 各数位的一个排列。 换句话说num1 和 num2 中所有数字出现的次数之和等于 num 中所有数字出现的次数。 num1 和 num2 可以包含前导 0 。 请你返回 num1 和 num2 可以得到的和的 最小 值。 提示 10 num 10^9 【排序 奇偶对】 int cmp(void *a,void *b){return *(int*)a-*(int*)b; } int splitNum(int num){int *splitmalloc(sizeof(int)*20);int cnt0;while(num0){split[cnt]num%10;num/10;}qsort(split,cnt,sizeof(int),cmp);int n10,n20;for(int i0;icnt;i){if(i%20){n1*10;n1split[i];}else{n2*10;n2split[i];}}return n1n2; }
http://www.yutouwan.com/news/263275/

相关文章:

  • 安装Wordpress个人网站青海营销网站建设多少钱
  • 烟台建设企业网站个人网页制作教程简单
  • 社团的工商年检网站在哪里做全屏网站怎么做
  • 融资网站建设国内十大网站建设
  • 上海企业网站建设公司名html5 个人网站模板
  • 专注微信网站建设鲨皇seo
  • 营销型网站需要备案吗网站的总体风格包括
  • 珠海建设工程网站建一个公司需要多少钱
  • 网站邮件模板手机软件开发工具
  • 制作网站对话框网站建设公司是什么
  • 搜索引擎营销原理是什么重庆网站seo方法
  • 黑龙江生产建设兵团知青网站中文域名网站 被搜索
  • 比较实用的h5网页建设网站泉州网站建设网络推广
  • 网站代码软件网页微博超话签到
  • asp sql做学生信息网站免费制造网站
  • 一起装修网官方网站中企动力 网站价格
  • 建行网站网址是多少怎样注册免费网站
  • 怎么建立自己网站wordpress 初始化
  • 微信公众号的网站雄安网站建设公司
  • 做传销一般是不是有网站深圳龙岗推广公司
  • 网站跳转怎么做2008如何添加iis做网站
  • 长春火车站进站需要核酸检测吗wordpress的首页例子
  • 建设部网站施工员查询用地方名字做网站
  • 怎么建一个公司运营网站微信网站api
  • 群辉可以做网站服务器吗苏州做网站公司怎么样
  • 建设展示类网站的意义深圳各大网站制作哪家公司好
  • 开发网站app公司中文企业网站html模板
  • 专题网站建设工作个人网店和网站的区别
  • 做网站付钱方式安卓app开发视频教程
  • 惠州 企业网站建设什么是竞价推广