1.【力扣刷题】合并两个有序链表2.【力扣】旋转链表3.【力扣】删除链表中的结点4.【力扣】反转链表II5.【力扣】分隔链表6.【力扣】删除排序链表中的重复元素II7.【洛谷】奖学金(结构体排序)8.【洛谷】明明的随机数(双指针去除重复元素)9.【洛谷】求第k小的数字(分治算法)10.【洛谷】阶乘之和(高精度运算)11.【洛谷】闰年12.【洛谷】数的性质13.【洛谷】虫子吃苹果14.【力扣】奇偶链表15.【力扣】不同路径II(动态规划)16.【力扣】数楼梯(动态规划)(看来高精度不学不行了)17.【力扣】斐波那契数列(动态规划入门)18.【力扣】最大子数组和(贪心)19.【力扣】摆动序列(贪心)20.【力扣】排列问题(回溯法)(去重)21.【力扣】排列问题(回溯法)(memset函数初始化数组)22.【力扣】非递减子序列23.【力扣】子集II(回溯法)(排序函数的一种隐藏用法?)24.【力扣】复原IP地址(回溯法)(分割问题)25.【力扣】分割回文串(回溯法)26.【力扣】组合总和3(组合的去重)27.【力扣】组合总数(回溯法)28.【力扣】电话号码的组合(回溯法)29.【力扣】求组合(回溯算法)30.【力扣】括号匹配(栈的应用)31.【力扣】组合总数(另一种整数溢出)32.【CUMTOJ】法师康工人(代码细节控制)33.【代码随想录】零钱兑换34.【代码随想录】零钱兑换II(关于组合与排列的区别)35.【代码随想录】完全背包36.【力扣】岛屿数量(体会一下dfs和bfs思路的实质)37.【代码随想录】广度优先搜索38.【代码随想录】深度优先搜索39.【力扣】重新安排行程(很难的回溯题)(未完待续)40.【力扣】零和一(不是多重背包)41.【力扣】最长公共子序列(动态规划)(还是得学套路才能会做)42.【力扣】目标和(新鲜的01背包题)43.【力扣】分割等和子集(不太像01背包的01背包)
44.【力扣】加油站(读题)
题目描述
分析
在思路上并不是很难,是一道贪心题,但是题目中的一些细节理解不好的话稳容易出问题。
这道题在实现上的正确方法应该是:逐个遍历汽车的起点,在每个起点上汽车可能有两个情况:没油或者回到了起点,
如果回到了起点的话,则这个起点是可行的。
而理解错误的地方就在于汽车没油的判定条件。在这道题中,如果汽车在某个位置上的油为0,加油站的油为0,消耗的汽油也为0,则汽车是无法发动的,而如果起始的时候没有油但是加油站的油和消耗的汽油刚好相等,则恰好能到达下一个位置。
(。。。其实我还是觉得这题有歧义)
代码
#include<bits/stdc++.h>
using namespace std;
int canCompleteCircuit(vector<int>& gas, vector<int>& cost) {
int cur ;//= 0;
//bool exist = false;;
int result = -1;
for(int i = 0; i < gas.size(); i++){
cur = gas[i] - cost[i];
int j = (i+1)%gas.size();
while(cur > 0 && j != i){
// if(cur + gas[j] - cost[j] < 0){
// //exist = false;
// break;
// }
// if((j + 1)%gas.size() == i){
// exist = true;
// break;
// }
cur += gas[j] - cost[j];
cout<<cur<<endl;
j = (j + 1)%gas.size();
}
// if(exist){
// cur = i;
// break;
// }
if(j == i){
result = j;
break;
}
}
// if(j != i){
// return -1;
// }else{
// return j;
// }
return result;
}
int main(){
int n;
cin>>n;
int tmp;
vector<int> gas;
vector<int> cost;
for(int i = 0; i < n; i++){
cin>>tmp;
gas.push_back(tmp);
}
for(int i = 0; i < n; i++){
cin>>tmp;
cost.push_back(tmp);
}
cout<<canCompleteCircuit(gas, cost);
return 0;
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端