Entrada (9)

Lo que se puede hacer es experimentar la escritura de esta clase, en realidad es inútil de todos modos. Se utilizan dos pilas para implementar una cola.

class MyQueue {
    
    
private:
    stack<int> inStack, outStack;
    void in2out() {
    
    
        while (!inStack.empty()) {
    
    
            outStack.push(inStack.top());
            inStack.pop();
        }
    }
public:
    //体会一下这个类的写法
    MyQueue() {
    
    }
    void push(int x) {
    
    
        inStack.push(x);
    }
    int pop() {
    
    
        if (outStack.empty()) {
    
    
            in2out();
        }
        int x = outStack.top();
        outStack.pop();
        return x;
    }
    int peek() {
    
    
        if (outStack.empty()) {
    
    
            in2out();
        }
        return outStack.top();
    }
    bool empty() {
    
    
        return inStack.empty() && outStack.empty();
    }
};
class Solution {
    
    
public:
    int maxEnvelopes(vector<vector<int>>& envelopes) {
    
    
        int n = envelopes.size();
        if(n <= 1)
            return n;

        sort(envelopes.begin(), envelopes.end());  

        vector<int> dp(n, 1);

        for(int i = 0; i < n; i++)
            for(int j = 0; j < i; j++)
                if((envelopes[j][0] < envelopes[i][0]) && (envelopes[j][1] < envelopes[i][1]))
                    dp[i] = max(dp[i], dp[j] + 1);

        return *max_element(dp.begin(), dp.end());
    }
};

Autor:
enlace de starfirz : https: //leetcode-cn.com/problems/russian-doll-envelopes/solution/zui-chang-di-zeng-zi-xu-lie-de-er-wei-bi-i9na/
sources : Los
derechos de autor de LeetCode (LeetCode) pertenecen al autor. Para reimpresiones comerciales, comuníquese con el autor para obtener autorización, y para reimpresiones no comerciales, indique la fuente.

El segundo vivirá primero y lo verá más tarde.

Supongo que te gusta

Origin blog.csdn.net/weixin_47741017/article/details/114407994
Recomendado
Clasificación