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

温州网站外包三亚门户

温州网站外包,三亚门户,网站开发敲代码,ip138查询域名查询目录 加油站#xff08;medium#xff09; 题目解析 讲解算法原理 编写代码 单调递增的数字#xff08;medium#xff09; 题目解析 讲解算法原理 编写代码 加油站#xff08;medium#xff09; 题目解析 1.题目链接#xff1a;. - 力扣#xff08;LeetCodemedium 题目解析 讲解算法原理 编写代码 单调递增的数字medium 题目解析 讲解算法原理 编写代码 加油站medium 题目解析 1.题目链接. - 力扣LeetCode 2.题目描述 在⼀条环路上有 n 个加油站其中第 i 个加油站有汽油 gas[i] 升。你有⼀辆油箱容量⽆限的的汽⻋从第 i 个加油站开往第 i1 个加油站需要消耗汽油 cost[i] 升。你从其中的⼀个加油站出发开始时油箱为空。 给定两个整数数组 gas 和 cost 如果你可以按顺序绕环路⾏驶⼀周则返回出发时加油站的编号否则返回 -1 。如果存在解则保证它是唯⼀的。 ⽰例1: 输⼊:gas[1,2,3,4,5],cost[3,4,5,1,2] 输出:3 解释: 从3号加油站(索引为3处)出发可获得4升汽油。此时油箱有044升汽油开往4号加油站此时油箱有4-158升汽油 开往0号加油站此时油箱有8-217升汽油 开往1号加油站此时油箱有7-326升汽油 开往2号加油站此时油箱有6-435升汽油 开往3号加油站你需要消耗5升汽油正好⾜够你返回到3号加油站。因此3可为起始索引。 ⽰例2: 输⼊:gas[2,3,4],cost[3,4,3] 输出:-1 解释: 你不能从0号或1号加油站出发因为没有⾜够的汽油可以让你⾏驶到下⼀个加油站。我们从2号加油站出发可以获得4升汽油。此时油箱有044升汽油 开往0号加油站此时油箱有4-323升汽油 开往1号加油站此时油箱有3-333升汽油 你⽆法返回2号加油站因为返程需要消耗4升汽油但是你的油箱只有3升汽油。因此⽆论怎样你都不可能绕环路⾏驶⼀周。 提⽰: ◦ gas.length n ◦ cost.length n ◦ 1 n 10(5) ◦ 0 gas[i], cost[i] 10(4) 讲解算法原理 解法暴⼒解法-贪⼼ 暴⼒解法 a. 依次枚举所有的起点 b. 从起点开始模拟⼀遍加油的流程 贪⼼优化 我们发现当从 i 位置出发⾛了 step 步之后如果失败了。那么 [i, i step] 这个区间内任意⼀个位置作为起点都不可能环绕⼀圈。 因此我们枚举的下⼀个起点应该是 i step 1 。 编写代码 c算法代码 class Solution { public:int canCompleteCircuit(vectorint gas, vectorint cost) {int n gas.size();for(int i 0; i n; i) // 依次枚举所有的起点{int rest 0; // 标记⼀下净收益int step 0;for( ; step n; step) // 枚举向后⾛的步数{int index (i step) % n; // 求出⾛ step 步之后的下标rest rest gas[index] - cost[index];if(rest 0) break;}if(rest 0) return i;i i step; // 优化}return -1;} }; java算法代码 class Solution {public int canCompleteCircuit(int[] gas, int[] cost) {int n gas.length;for(int i 0; i n; i) // 依次枚举所有的起点 {int rest 0; // 统计净收益int step 0;for( ; step n; step) // 枚举向后⾛的步数 {int index (i step) % n; // ⾛ step 步之后的下标 rest rest gas[index] - cost[index];if(rest 0){break;}}if(rest 0){return i;}i i step; // 优化}return -1;} } 单调递增的数字medium 题目解析 1.题目链接. - 力扣LeetCode 2.题目描述 当且仅当每个相邻位数上的数字x和y满⾜xy时我们称这个整数是单调递增的。给定⼀个整数n返回⼩于或等于n的最⼤数字且数字呈单调递增。 • ⽰例1: 输⼊:n10 输出:9 • ⽰例2: 输⼊:n1234 输出:1234 • ⽰例3: 输⼊:n332 输出:299 • 提⽰: 0n10^9 讲解算法原理 解法贪⼼ a. 为了⽅便处理数中的每⼀位数字可以先讲整数转换成字符串b. 从左往右扫描找到第⼀个递减的位置 c. 从这个位置向前推推到相同区域的最左端d. 该点的值 -1 后⾯的所有数统⼀变成 9 。 编写代码 c算法代码 class Solution { public:int monotoneIncreasingDigits(int n) {string s to_string(n); // 把数字转化成字符串 int i 0, m s.size();// 找第⼀个递减的位置while(i 1 m s[i] s[i 1]) i;if(i 1 m) return n; // 判断⼀下特殊情况 // 回推while(i - 1 0 s[i] s[i - 1]) i--;s[i]--;for(int j i 1; j m; j) s[j] 9;return stoi(s);} }; java算法代码 class Solution {public int monotoneIncreasingDigits(int n) {// 把数字转化成字符串char[] s Integer.toString(n).toCharArray();int i 0, m s.length;// 找第⼀个递减的位置while(i 1 m s[i] s[i 1]) i;if(i m - 1) return n; // 特判⼀下特殊情况// 回退while(i - 1 0 s[i] s[i - 1]) i--;s[i]--;for(int j i 1; j m; j) s[j] 9;return Integer.parseInt(new String(s));} }
http://www.hkea.cn/news/14483806/

相关文章:

  • 开发手机网站教程可以上传自己做的视频的网站
  • 快要到期的域名网站欣赏艺术类的网站
  • 做网站设计的公司柳州网站建设入门pdf
  • 做a网站本网站仅支持ie浏览器
  • 网站仿站工具网络营销包括
  • 网站模板信息不存在企业运营管理岗位职责
  • 电子商务网站推广的方式有哪些手机做ppt的软件
  • 黑龙江 网站开发英文网站如何做seo
  • 网站建设用阿里还是华为云微信企业邮箱怎么注册
  • 网站界面设计的发展趋势网站vps
  • 百度公司网站seo方案什么是网站?
  • 惠州专业的免费建站网络广告的特征是()多选题
  • 网站域名可以自己做吗中国私企建筑公司十大排名
  • 网站快速排名优化价格图片编辑在线
  • 手机网站展示vi设计是平面设计吗
  • 麓谷网站建设淘宝网站图片维护怎么做
  • 企业做网站的困惑建筑人才网招收土建预算员实学生
  • 做网站郑州公司网站建设管理概述
  • saas 平台架构做网站多模块内容网页布局设计
  • 网站建设项目方案wordpress里的发消息给我
  • 温州小学网站建设百度竞价
  • 怎么讲解网站php网站分类目录程序 网址导航程序 织梦二次开发
  • wordpress 预览主题插件汉化优化算法分类
  • 安徽省住房和城乡建设厅门户网站万网网站建设 优帮云
  • 网站设计论文引言深圳比较大的外包公司有哪些
  • wordpress搜索插件慢郑州seo代理商
  • 甘肃建设厅网站二级建造师报名时间wordpress的md
  • 度假村网站模板新增病例最新消息
  • 湘潭网站建设 搜搜磐石网络源码下载网站cms
  • 企业大型网站开发建站教程详解网站模板在线预览