From 3b5868100f7c662dc73b3a0ee335f9f470184fd9 Mon Sep 17 00:00:00 2001 From: Mahdi Dibaiee Date: Fri, 20 Nov 2015 20:12:48 +0330 Subject: [PATCH] Pascal's triangle --- other/pascal-triangle.js | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 other/pascal-triangle.js diff --git a/other/pascal-triangle.js b/other/pascal-triangle.js new file mode 100644 index 0000000..f441faf --- /dev/null +++ b/other/pascal-triangle.js @@ -0,0 +1,26 @@ +'use strict'; + +import _ from '../utils'; + +let input = _.args.numbers()[0]; + +let pascal = []; + +for (let i = 0; i < input; i++) { + let past = pascal[i - 1]; + let n = new Array(i + 1); + n[0] = 1; + n[i] = 1; + + for (let j = 1; j < i; j++) { + n[j] = past[j - 1] + past[j]; + } + pascal.push(n); +} + + +let single = pascal.reduce((a, b) => { + return a.concat(b); +}, []); + +_.log(single);