leetcode 2412. 完成所有交易的初始最少钱数

题目:2412. 完成所有交易的初始最少钱数 - 力扣(LeetCode)

题目要求的就是最差情况的本钱最少是多少,肯定是先亏钱再赚钱。

对于每个交易:

  • 如果是赚钱或保本,只有最大的本金对本钱有影响
  • 如果是亏钱,所有交易都影响本金
  • 如果全部交易都是亏钱的,最差情况下,最后一次交易的盈利应当最大

基于这些条件,可以简化计算方式:

复制代码
class Solution {
public:
    long long minimumMoney(vector<vector<int>>& transactions) {
        long long ret = 0;
        int lc = 0;
        for (int i = 0; i < transactions.size(); i++) {
            vector<int>& t = transactions[i];
            if (t[0] > t[1]) {
                ret += t[0] - t[1];
            }
            if (t[0] > lc && t[1] > lc) {
                lc = min(t[0], t[1]);
            }
        }
        ret += lc;
        return ret;
    }
};
相关推荐
元亓亓亓20 分钟前
LeetCode热题100--39. 组合总和
算法·leetcode·职场和发展
2401_8414956435 分钟前
【LeetCode刷题】找到字符串中所有字母异位词
数据结构·python·算法·leetcode·数组·滑动窗口·找到字符串中所有字母异位词
橘颂TA39 分钟前
【剑斩OFFER】算法的暴力美学——寻找数组的中心下标
算法·leetcode·职场和发展·结构与算法
py有趣41 分钟前
LeetCode算法学习之鸡蛋掉落
学习·算法·leetcode
Kuo-Teng3 小时前
LeetCode 141. Linked List Cycle
java·算法·leetcode·链表·职场和发展
资深web全栈开发3 小时前
力扣2536子矩阵元素加1-差分数组解法详解
算法·leetcode·矩阵·golang·差分数组
·云扬·4 小时前
【LeetCode Hot 100】 136. 只出现一次的数字
算法·leetcode·职场和发展
熬了夜的程序员5 小时前
【LeetCode】114. 二叉树展开为链表
leetcode·链表·深度优先
大胆飞猪9 小时前
递归、剪枝、回溯算法---全排列、子集问题(力扣.46,78)
算法·leetcode·剪枝
Swift社区12 小时前
LeetCode 421 - 数组中两个数的最大异或值
算法·leetcode·职场和发展