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;
    }
};
相关推荐
Frostnova丶6 小时前
LeetCode 190.颠倒二进制位
java·算法·leetcode
json{shen:"jing"}8 小时前
字符串中的第一个唯一字符
算法·leetcode·职场和发展
追随者永远是胜利者8 小时前
(LeetCode-Hot100)15. 三数之和
java·算法·leetcode·职场和发展·go
程序员酥皮蛋9 小时前
hot 100 第二十七题 27.合并两个有序链表
数据结构·leetcode·链表
im_AMBER11 小时前
Leetcode 121 翻转二叉树 | 二叉树中的最大路径和
数据结构·学习·算法·leetcode
v_for_van14 小时前
力扣刷题记录6(无算法背景,纯C语言)
c语言·算法·leetcode
样例过了就是过了15 小时前
LeetCode热题100 最大子数组和
数据结构·算法·leetcode
踩坑记录15 小时前
leetcode hot100 200. 岛屿数量 medium dfs
leetcode·深度优先
追随者永远是胜利者17 小时前
(LeetCode-Hot100)4. 寻找两个正序数组的中位数
java·算法·leetcode·职场和发展·go
追随者永远是胜利者17 小时前
(LeetCode-Hot100)2. 两数相加
java·算法·leetcode·go