leetcode_118_Pascal's Triangle

来源:互联网 发布:2015网络流行语 编辑:程序博客网 时间:2024/05/17 21:49

麻烦各位朋友帮忙顶一下增加人气,如有错误或疑问请留言纠正,谢谢微笑


Pascal's Triangle

Given numRows, generate the first numRows of Pascal's triangle.


For example, given numRows = 5,
Return

[
     [1],
    [1,1],
   [1,2,1],
  [1,3,3,1],
 [1,4,6,4,1]

]


//vs2012测试代码  #include<iostream>#include<vector>using namespace std;vector<vector<int> > generate(int numRows) {vector<vector<int>> ans;//resize是改变容器的大小,并且创建对象;  reserve是容器预留空间,但并不真正创建元素对象//使用assign()将10个整数值42的副本赋值给vector: v.assign( 10, 42 );ans.resize(numRows); for(int i=0; i<numRows; i++)ans[i].assign(i+1,1);for(int i=2; i<numRows; i++)for(int j=1; j<ans[i].size()-1; j++)ans[i][j] = ans[i-1][j-1] + ans[i-1][j];for(int i=0; i<numRows; i++){for(int j=0; j<ans[i].size(); j++)cout<<ans[i][j];cout<<endl;}return ans;}int main(){int num;cin>>num;generate(num);return 0;}

//方法一:自测Acceptedclass Solution {public:    vector<vector<int> > generate(int numRows) {vector<vector<int>> ans;//resize是改变容器的大小,并且创建对象;  reserve是容器预留空间,但并不真正创建元素对象//使用assign()将10个整数值42的副本赋值给vector: v.assign( 10, 42 );ans.resize(numRows); for(int i=0; i<numRows; i++)ans[i].assign(i+1,1);for(int i=2; i<numRows; i++)for(int j=1; j<ans[i].size()-1; j++)ans[i][j] = ans[i-1][j-1] + ans[i-1][j];return ans;    }};


1 0
原创粉丝点击