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;
    }
};
相关推荐
小南知更鸟5 分钟前
【leetcodehot100】leetcode-hot100-20260809更新
算法·leetcode·职场和发展
雪碧聊技术3 小时前
力扣 回溯法 | LCR 020. 回文子串
javascript·算法·leetcode
wabs6663 小时前
关于哈希表【力扣454.四数相加II的思考】
数据结构·算法·leetcode·散列表
Forever Nore4 小时前
LeetCode 2 两数相加 - 链表
leetcode·链表·哈希表
rannn_1114 小时前
【力扣hot100】238、41、73题解
java·算法·leetcode·开发
evans在进步7 小时前
LeetCode 236:二叉树的最近公共祖先——DFS 路径记录法详解
算法·leetcode·深度优先
evans在进步19 小时前
LeetCode 2 两数相加:链表模拟加法,Java 图解进位过程
java·leetcode·链表
Hi李耶19 小时前
【LeetCode】557.反转字符串中的单词 III
算法·leetcode·职场和发展
wangwangmoon_light1 天前
1.1 灵神题单总结_滑动窗口与双指针
leetcode
Navigator_Z1 天前
LeetCode //C - 1187. Make Array Strictly Increasing
c语言·算法·leetcode