zoukankan      html  css  js  c++  java
  • leetcode1665 完成所有任务的最少初始能量

    思路:

    贪心。

    实现:

     1 class Solution
     2 {
     3 public:
     4     int minimumEffort(vector<vector<int>>& tasks)
     5     {
     6         int n = tasks.size(), sum = 0;
     7         for (int i = 0; i < n; i++)
     8         {
     9             sum += tasks[i][0];
    10         }
    11         sort(tasks.begin(), tasks.end(), 
    12             [](const vector<int>& a, const vector<int>& b) { return a[1] - a[0] > b[1] - b[0]; });
    13         int res = sum;
    14         for (int i = 0; i < n; i++)
    15         {
    16             if (sum < tasks[i][1]) { res += tasks[i][1] - sum; sum = tasks[i][1]; }
    17             sum -= tasks[i][0];
    18         }
    19         return res;
    20     }
    21 };
  • 相关阅读:
    ACM TJU 1556
    HDU 1890 Robotie Sort
    Android学习笔记
    HDU 2795
    HDU 1542
    HDU 1698
    POJ 2185
    学习笔记
    HDU 3336
    HDU 3746
  • 原文地址:https://www.cnblogs.com/wangyiming/p/14977427.html
Copyright © 2011-2022 走看看