本文主要是介绍Leetcode—1094.拼车【中等】,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
2023每日刷题(四十七)
Leetcode—1094.拼车
模拟实现代码
bool carPooling(int** trips, int tripsSize, int* tripsColSize, int capacity) {int arr[1003] = {0};int numPassenger = 0, fromidx = 0, toidx = 0;for(int i = 0; i < tripsSize; i++) {numPassenger = trips[i][0];fromidx = trips[i][1];toidx = trips[i][2];for(int j = fromidx; j < toidx; j++) {arr[j] += numPassenger;if(arr[j] > capacity) {return false;}}}return true;
}
运行结果
差分数组算法思想
参考自灵茶山艾府
差分数组实现代码
bool carPooling(int** trips, int tripsSize, int* tripsColSize, int capacity) {int d[1003] = {0};int idxmax = 0;int numPassenger = 0, fromidx = 0, toidx = 0;for(int i = 0; i < tripsSize; i++) {numPassenger = trips[i][0];fromidx = trips[i][1];toidx = trips[i][2];d[fromidx] += numPassenger;d[toidx] -= numPassenger;idxmax = idxmax > toidx ? idxmax: toidx;}int s = 0;for(int i = 0; i <= idxmax; i++) {s += d[i];if(s > capacity) {return false;}}return true;
}
运行结果
之后我会持续更新,如果喜欢我的文章,请记得一键三连哦,点赞关注收藏,你的每一个赞每一份关注每一次收藏都将是我前进路上的无限动力 !!!↖(▔▽▔)↗感谢支持!
这篇关于Leetcode—1094.拼车【中等】的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!