leetcode-Pascal's Triangle II

Difficulty: Easy

Given an index k, return the kth row of the Pascal's triangle.

For example, given k = 3,
Return [1,3,3,1].

Note:
Could you optimize your algorithm to use only O(k) extra space?

class Solution {
public:
    vector<int> getRow(int rowIndex) {
        if(rowIndex<0)
            return vector<int>();
        if(rowIndex==0)
            return {1};
        vector<int> ores(2,1);
        if(rowIndex==1)
            return ores;
        
        for(int i=1;i<rowIndex;++i){
            vector<int> res;
            res.push_back(1);
            int osize=ores.size();
            for(int i=0;i<osize-1;++i)
                res.push_back(ores[i]+ores[i+1]);    
            res.push_back(1);
            ores=res;
        }    
        return ores;     
    }
};


你可能感兴趣的:(leetcode-Pascal's Triangle II)