Gas Station——Leetcode系列(十六)

python123题目——个税计算器 类型:简单分支。 阅读详情

Gas Station

 

There are N gas stations along a circular route, where the amount of gas at station i is gas[i].

You have a car with an unlimited gas tank and it costs cost[i] of gas to travel from station i to its next station (i+1). You begin the journey with an empty tank at one of the gas stations.

Return the starting gas station's index if you can travel around the circuit once, otherwise return -1.

Note:
The solution is guaranteed to be unique.



Analysis:

First, iterate from station 0 to station length -1, if gas < cost, then start from index + 1 to index (circle) ; we use flag to avoid starting station 0 again.  If there is no solution from ascending, then we start station length -1 to station 0 reversely, by the same method.


Solution:

public class Solution {
    public int canCompleteCircuit(int[] gas, int[] cost) {
        int length = gas.length;
        boolean flag = false;
        for(int i = 0; i < length; i++){
           int index = i;
           int remain = 0;
           while(true){
               if(remain + gas[index] >= cost[index]){
                   remain += gas[index] - cost[index];
                   index++;
               }else{
                   i = index;
                   break;
               }
               if(index == length){
                   index = 0;
                   flag = true;
               }
               if(index == i){
                   return index;
               }
           }
           if(flag){
               break;
           }
        }
        flag = false;
        for(int i = length - 1; i >= 0; i--){
            int index = i;
            int remain = 0;
            while(true){
                if(remain + gas[index] >= cost[(index - 1 + length) % length]){
                    remain += gas[index] - cost[(index - 1 + length) % length];
                    index--;
                }else{
                    i = index;
                    break;
                }
                if(index == -1){
                    index = length - 1;
                    flag = true;
                }
                if(index == i){
                    return index;
                }
            }
            if(flag){
                break;
            }
        }
        return -1;
    }
}


题目来源:https://oj.leetcode.com/problems/gas-station/

RK3588 启动卡死 kernel的设备树默认启动了hdmi0,我们的板子没有使用到hdmi0,因此在uboot阶段会卡住。uboot阶段会卡在hdptx_rpoll_cmn_config函数这里。最近再调试公司一个新板子,rk3588芯片,硬件自己设计。2、单PMIC和双PMIC配置,卡在更新处。3、emmc卡死,怀疑。1、hdmi0 卡死。 阅读详情

相关推荐

基于SHIS凝视型短波红外高光谱相机(900-1700nm)区分不同宝石的差异性和可分性(宝石分选)

SHIS系列凝视型高光谱相机基于液晶可调谐滤波器(LCTF),通过电控LCTF进行连续细分窄波段分光,对每个波段进行高分辨率的二维面阵成像,进行图像处理后,获得完整的高光谱高清图像序列。具有低功耗、小型化、使用方便和易于扩展的优势。其工作波段覆盖400nm至1000nm,能够捕捉宝石在不同波长下的光谱特征,为宝石鉴定提供了新的工具。

wayho的博客 709

树状形式打印二叉树

树状结构打印二叉树,na

Hooting的码农笔记本 1万+

卷积操作复杂度公式推导

复杂度Hout⋅Wout⋅Cout⋅Cin⋅k2\text{复杂度} = H_{\text{out}} \cdot W_{\text{out}} \cdot C_{\text{out}} \cdot C_{\text{in}} \cdot k^2复杂度Hout​⋅Wout​⋅Cout​⋅Cin​⋅k2该公式反映了卷积核作用于每个像素时的局部操作和跨通道的计算需求。卷积计算复杂度与输入尺寸线性相关。

qq_41037856的博客 1306

ajax发送get、post请求

ajax可以发送post或者get请求,并且keyi

Hooting的码农笔记本 1万+

InternVL 3.5 深度解析:开源多模态模型的新里程碑

InternVL 3.5是由上海人工智能实验室OpenGVLab团队推出的开源多模态大模型,在推理能力、效率和灵活性方面取得突破。该模型采用ViT-MLP-LLM架构,包含60亿参数的InternViT-6B视觉编码器和多种规格的语言模型骨干。核心创新包括:1)Cascade RL强化学习框架,通过离线热身和在线强化两阶段训练提升推理能力;2)ViR视觉分辨率路由器,动态调整图像处理分辨率以优化计算效率;3)DvD动态视觉token压缩技术。模型系列涵盖2B到241B参数规模,满足从边缘设备到高性能计算的不

m0_47999117的博客 1030

阿里平头哥与华为芯片的比较

阿里平头哥与华为芯片代表了中国AI芯片领域的两种典型发展路径:平头哥通过兼容CUDA生态快速切入市场,以较低成本提供接近国际水平的AI算力;华为则坚持全栈自研路线,构建从芯片到框架的完整技术体系,更注重供应链安全和自主可控。从短期来看,平头哥PPU在单卡性能参数上全面超越昇腾910B,接近英伟达H20水平,且成本优势明显,有望在云服务和互联网应用领域取得更大市场份额。而华为昇腾则凭借全栈自研和端边云协同优势,在政企市场和科研领域更具竞争力。

shao.bing的专栏 3991

字符输出大小不一致的问题

在例如JTextArea这样的kongjian

Hooting的码农笔记本 1万+

Apifox CLI + Claude Skills:将接口自动化测试融入ai

基于 Apifox CLI、Claude Code以及Claude Skills组合,实现自然语言触发接口自动化测试。

wwz_0012的博客 598

Eclipse + Tomcat 配置

开发环境 Eclipse For Java EE(Kepler Release) Tomcat(7.0) 开发步骤 点击Eclipse->Help->Install New Software.. 添加更新源:http://download.eclipse.org/callisto/releases/ 选中Web and J2EE Development并安装 新建

Hooting的码农笔记本 9722

发那科机器人编程软件fanuc roboguide授权补丁_工业机器人离线编程与应用:ROBOGUIDE V8.3版本的工程文件创建...

欢迎关注我们ROBOGUIDE是发那科机器人公司提供的一个离线编程工具,可模拟现实中的机器人和周边设备的布局,通过虚拟TP示教来模拟机器人的运动轨迹,同时可以验证方案的可行性和准确的周期时间。ROBOGUIDE是一款核心应用软件,具体的还包括搬运、弧焊、喷涂等其他模块。以最新的8.3版本为例进行讲解,对于未注册的版本将有30天的免费使用期限。开始菜单击开始菜单中的HandingPRO启动程序,第一...

weixin_39791446的博客 2924

VTsystem背景检查函数Value Valid

Value Valid是个非常实用的函数,如何让它灵活的为我们所用,便是本文的内容。

欢迎来到eee的博客 794

JDK配置

Window7下的JDK环境变量配置:

Hooting的码农笔记本 9511

华为OD机试真题 新系统2026-04-01 Python&JS【计算数列位置N的值】

如果其前面的M个元素中,存在值相同的元素,则该位置上的数值等于前面M个数中最大的数值与最小的数值之如果其前面的M个元素中,不存在值相同的元素,则该位置上的数值等于前面M个数中最大的数值与最小的数值之差;1、输入M、N两个数,则按照以下规则形成一个数列;两个整数,用逗号分割,分别表示M和N。一个整数,表示数列第N个位置上的数值。2、数列的前M个元素的值为1到M;请计算该数列第N个位置上的数值。N取值范围:1<= N<=50。M取值范围:3<=M<=10。

MISAYAONE的博客 3223

判断字符串是否能分割成字典中的单词(一)——Leetcode系列(十一)

Word Break Given a string s and a dictionary of words dict, determine if s can be segmented into a space-separated sequence of one or more dictionary words. For example, given s = "leetco

Hooting的码农笔记本 4260

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

判断字符串是否能分割成字典中的单词(二)——Leetcode系列(十二)

Given a string s and a dictionary of words dict, add spaces in s to construct a sentence where each word is a valid dictionary word. Return all such possible sentences. For example, given s = "

Hooting的码农笔记本 3527

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

Java HashMap的实现

HashMap是Java中经常使用的集合类。

Hooting的码农笔记本 3267

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

Iterator与Enumeration的区别

Iterator是一个接口,包含三个方法: hasNext() next() remove() Enumeration也是一个接口,它是一个遗留类,集合类中只有Vector和HashTable实现了该接口。它包含了两个方法: 1. hasMoreElements() 2. nextElement()由接口定义可知,Iterator在遍历时可以对元素进行删除操作,当遍历过程中,有其他线程对集合类的

Hooting的码农笔记本 2939

使用快速排序算法对列表进行排序——Leetcode系列(四)

Sort a linked list in O(n log n) time using constant space complexity. My Answer:

Hooting的码农笔记本 2929

Quick-Union[Algorithm]

Q. Is there a path connecting p and q ?

Hooting的码农笔记本 2894

Fail Fast与Fail Safe的区别

Fail FastFail Fast Iterator在遍历集合时,若该集合发生了结构性的改变,则将抛出 ConcurrentModification 异常。例如: Map<String, String> premiumPhone = new HashMap<String, String>(); premiumPhone.put("Apple", "iPhone");

Hooting的码农笔记本 2770

分配糖果问题——Leetcode系列(十五)

Candy   There are N children standing in a line. Each child is assigned a rating value. You are giving candies to these children subjected to the following requirements: Each child must

Hooting的码农笔记本 1475

Spring事务管理学习笔记

1.      主要接口介绍 在Spring中,与事务相关的类或接口有以下三个: Ø  TransactionDefinition TransactionDefinition的作用是定义一个事务的属性,比如传播属性、隔离属性、超时属性等。 Ø  TransactionStatus TransactionStatus记录一个运行时的事务。 Ø  Platfor

Hooting的码农笔记本 1473

数据结构 二叉堆 & 堆排序

二叉堆,是一个满二叉树,满足堆的性质。即父节点大于等于子节点(max heap)或者是父节点小于等于子节点(min heap)。二叉堆的如上性质常用于优先队列(priority queue)或是用于堆排序。 由于max heap 与min heap类似,下文只针对min heap进行讨论和实现。 如上图,是根据字母的ASCII码建立的最小堆。 我们用数组对满二叉树采用宽度优先遍历存储

Hooting的码农笔记本 1387

LeetCode2461~2480题目解析

LeetCode2461~2480题目解析

jiaomubai的博客 119

LeetCode Hot 100 二叉树专题(二)3 题(Java)

本篇文章共 3 题:543. 二叉树的直径、102. 二叉树的层序遍历、108. 将有序数组转换为二叉搜索树。 每道题都统一按「① 题目分析 & 解题思路 → ② 常见解法(附代码)及讲解 → ③ 知识点总结」的顺序组织;代码使用 Java 编写,节点定义沿用 LeetCode 默认的 TreeNode。

2401_88612756的博客 365

LeetCode 每日一题 2026/11/2-2026/11/8

记录了初步解题思路 以及本地实现代码;并不一定为最优 也希望大家能一起探讨 一起进步

AlphaTao的博客 176
上一篇: 分配糖果问题——Leetcode系列(十五)
下一篇: Sum Root to Leaf Numbers ——Leetcode系列(十七)
Hooting
博客等级 码龄17年 11粉丝 44原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值