public static List<List<Integer>> generate(int numRows) {
    	List<List<Integer>> res = new ArrayList<List<Integer>>();
        for (int i = 0; i < numRows; i++) {
        	List<Integer> l = new ArrayList<Integer>();
        	for (int j = 0; j < i + 1; j++) {
        		if (0 == i || 0 == j || i == j) {
        			l.add(1);
        		} else {
        			l.add(res.get(i - 1).get(j - 1) + res.get(i - 1).get(j));
        		}
        	}
        	res.add(l);
        }
    	return res;
    }