Skip to main content
2 of 4
added 4 characters in body

Haskell - 118 bytes

z=zipWith(+) p n|n<2=[1]|m<-p(n-1)=z(0:0:m)(m++[0,0]) -- Generate the nth triangle row. r#n|n>0=(0:r++[0])#(n-1)|2>1=r -- Pad a row (r) with n 0s on each side. f n=foldl1 z[p x#(n-x)|x<-[1..n]] -- Sum the first n [padded] rows