其他分享
首页 > 其他分享> > 5801. 消灭怪物的最大数量

5801. 消灭怪物的最大数量

作者:互联网

5801. 消灭怪物的最大数量

题目出处:https://leetcode-cn.com/problems/eliminate-maximum-number-of-monsters/
在这里插入图片描述
在这里插入图片描述
思路:time[i]记录第i个怪物到达城市所需要的时间,即第i个怪物最晚可被消灭的时间。在每个时间段开始的时间点可以消灭一个怪物,因此消灭怪物的最大值是在每次优先消灭到达城市时间最早的怪物条件下产生的。

class Solution {
public:
    int eliminateMaximum(vector<int>& dist, vector<int>& speed) {
        int n = dist.size();
        vector<int> t(n);
        int res = 0;
        for(int i=0;i<n;i++){
            t[i] = (dist[i]-1)/speed[i];//时间
        }
        sort(t.begin(), t.end());
        for(int i=0;i<n;i++){
            if(t[i]<i) break;
            res++;
        }
        return res;
    }
};

标签:dist,int,vector,怪物,消灭,5801,speed
来源: https://blog.csdn.net/zaa_12346/article/details/118464798