字节跳动在北京有 N 个工区,形成一个环状,Bytebus 是往返在各个工区的通勤车,按工区的顺序行驶,其中第 i 个工区有汽油 gas[i] 升。你有一辆油箱容量无限的 Bytebus,从第 i 个工区开往第 i+1 个工区需要消耗汽油 cost[i] 升。你从其中的一个工区出发,开始时油箱为空,可以使用当前工区的汽油 gas[i]升。如果你可以绕环路行驶一周,则返回出发时工区的编号,否则返回 -1。

输入:gas = [1,2,3,4,5] cost = [3,4,5,1,2]

输出:3

遇到一个面经上的算法题,觉得很有趣,遂答之,这个应该也就是leetcode简单级别

public static void main(String[] args) {int[] cost = {3,4,5,1,2};int[] gas = {1,2,3,4,5};System.out.println(byteDance(cost,gas,3));}public static int byteDance(int[] cost,int[] gas,int num){int sum = gas[num] - cost[num];if(sum < 0) return -1;int next = num == gas.length -1 ? 0 : num + 1;while(num != next) {sum = sum + gas[next] - cost[next];if (sum < 0) return -1;next = next == gas.length -1 ? 0 : next + 1;}return num;}

当然,测试用例不够,我也只是把题目中的数据都改了一遍,因为题目有些歧义,所以我默认工区号是0,1,2,3,4,反正是环形,都差不多

通勤车油耗(算法题)相关推荐

  1. Re: 求助:5道算法题

    http://www.newsmth.net/frames.html 发信人: cutepig (cutepig), 信区: Algorithm 标  题: 求助:5道算法题 发信站: 水木社区 (S ...

  2. 经典算法题每日演练——第六题 协同推荐SlopeOne 算法

    原文:经典算法题每日演练--第六题 协同推荐SlopeOne 算法 相信大家对如下的Category都很熟悉,很多网站都有类似如下的功能,"商品推荐","猜你喜欢&quo ...

  3. 算法总结---最常用的五大算法(算法题思路)

    算法总结---最常用的五大算法(算法题思路) 一.总结 一句话总结: [明确所求:dijkstra是求点到点的距离,辅助数组就是源点到目标点的数组] [最简实例分析:比如思考dijkstra:假设先只 ...

  4. BAT七年经验,却抵不过外企面试的两道算法题?

    整理| 琥珀 出品| AI科技大本营 又遇年底跳槽季,如果你曾在 BAT 等互联网大厂有过较为丰富的工作经验,想要换份工作,面试时会主要考虑哪些因素? 面试外企,却被两道算法题难住? 近日,一位网友在 ...

  5. 字节跳动面试官:你离50w年薪就差答对了这个算法题!

    我有个朋友,最近去头条面试,因为算法题没写出来,直接面挂了,搞得他非常郁闷. 众所周知,算法对程序员来说越来越重要了,但是总有人抱有一丝侥幸,不肯投入精力去学习,想着现在的工作中反正也用不到,等找工作 ...

  6. 一道看完答案你会觉得很沙雕的「动态规划算法题」

    这道算法题其实并不难,如果你把文章从头到尾看完的话基本上能看懂,但如果你看到最后的话大概率会说一句:这是什么沙雕题目?! 题目来源于 LeetCode 第 877 号问题:石子游戏. 为了更好理解,我 ...

  7. 经典算法题之Maximal Square

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 作者:叶    虎 Maximal Square是道非常有意思的算 ...

  8. JAVA 判断简单密码算法_十道简单算法题二【Java实现】

    前言 清明不小心就拖了两天没更了-- 这是十道算法题的第二篇了-上一篇回顾:十道简单算法题 最近在回顾以前使用C写过的数据结构和算法的东西,发现自己的算法和数据结构是真的薄弱,现在用Java改写一下, ...

  9. 算法笔记-链相关、链的基础、单链双链环链、链的各种功能实现、链的算法题、面试题以及算法优化方法(多)、C#

    1. 链定义及其基础 单链表是一种链式存取的数据结构,用一组地址任意的存储单元存放线性表中的数据元素.这组存储单元既可以是连续的,也可以是不连续的. 链表定义: 链表是一种线性表数据结构: 从底层存储 ...

最新文章

  1. 高逼格UILabel的闪烁动画效果
  2. centos6.5下iptables基础知识详解与配置
  3. 为什么有的系统的事务码BSP_WD_CMPWB看不见Enhance Component这个按钮
  4. 蓝桥杯练习系统习题-算法训练5
  5. (JavaWeb)ServletContext对象
  6. 我是学计算机的上银行考什么条件,计算机专业能报考银行哪些岗位
  7. CSS Sprite “精灵图“
  8. Mysql配置优化浅谈
  9. Windows 2008 R2安装DHCP服务器问题及解决方法
  10. great English sentence:
  11. 怎么打败腾讯[纯讨论]
  12. 程序员|听说你们都很好说话?你做几件事,就知道了!
  13. 程序员情人节送这些!
  14. easypoi 列合并_SpringBoot整合EasyPOI实现Excel、Word的导入导出功能
  15. linux文件状态,Linux命令之stat - 显示文件或文件系统状态
  16. Struts2回顾复习02
  17. 中国计算机设计大赛蔡思琦,建策杯2018年江苏省大学生计算机设计大赛.PDF
  18. 【5G系列】RLC (Radio Link Control )协议详解
  19. 测试用例设计方法与举例说明
  20. CTR/CVR预测模型的特征怎么找?不同类型特征怎么处理?序列Embedding特征怎么用?

热门文章

  1. MQTT虚拟服务器 读取繁易云平台数据
  2. 天猫数据分析:饮料市场头部份额下滑,无糖饮料占比40%
  3. 2008年北大文科在渝录取情况统计--------------仅一个未加分
  4. python——找出直线经过的栅格
  5. UBTC——区块链下一个领航大旗
  6. JavaScript--前后端交互AjaxjQuery
  7. 云服务器和虚拟主机区别何在?
  8. 中专学计算机室内设计,读中专学室内设计主要学些什么
  9. 连载03:软件体系设计新方向:数学抽象、设计模式、系统架构与方案设计(简化版)(袁晓河著)
  10. [C] 在GCC中获取CPUID信息(兼容VC)