aboutsummaryrefslogtreecommitdiff
path: root/challenge-003/abigail/python/ch-2.py
diff options
context:
space:
mode:
author冯昶 <fengchang@novel-supertv.com>2021-02-22 17:45:14 +0800
committer冯昶 <fengchang@novel-supertv.com>2021-02-22 17:45:14 +0800
commit572994875f5972916deabeb84f3648ac4640107b (patch)
tree1458cfc22c7b80dd025415f73e7c808814bb0db7 /challenge-003/abigail/python/ch-2.py
parent7021a6ee78be5c0a1bc1a30db583004a88fc7a15 (diff)
parent2c26164a5a90aa14a19078d845769d3ec9fbb5ae (diff)
downloadperlweeklychallenge-club-572994875f5972916deabeb84f3648ac4640107b.tar.gz
perlweeklychallenge-club-572994875f5972916deabeb84f3648ac4640107b.tar.bz2
perlweeklychallenge-club-572994875f5972916deabeb84f3648ac4640107b.zip
Merge remote-tracking branch 'upstream/master'
Diffstat (limited to 'challenge-003/abigail/python/ch-2.py')
-rw-r--r--challenge-003/abigail/python/ch-2.py46
1 files changed, 46 insertions, 0 deletions
diff --git a/challenge-003/abigail/python/ch-2.py b/challenge-003/abigail/python/ch-2.py
new file mode 100644
index 0000000000..9370561d8b
--- /dev/null
+++ b/challenge-003/abigail/python/ch-2.py
@@ -0,0 +1,46 @@
+#!/opt/local/bin/python
+
+#
+# See ../READ.md
+#
+
+#
+# Run as python ch-2.py < input-file
+#
+
+import fileinput
+import sys
+
+#
+# Iterate over the input
+#
+for line in fileinput . input ():
+ rows = int (line)
+
+ #
+ # Create the first row, and print it
+ #
+ row = [1]
+ sys . stdout . write (str (1) + "\n")
+
+ for r in range (1, rows + 1):
+ #
+ # Create a new row
+ #
+ new = [None] * (r + 1) # In Python, arrays don't grow automatically
+ for i in range (r + 1):
+ sum = 0
+ if i > 0:
+ sum = row [i - 1]
+ sys . stdout . write (" ")
+ if i < r:
+ sum = sum + row [i]
+ new [i] = sum
+ sys . stdout . write (str (sum))
+ sys . stdout . write ("\n")
+
+ #
+ # New row becomes current row
+ #
+ row = new
+