aboutsummaryrefslogtreecommitdiff
path: root/problems/partitionnumbers.py
diff options
context:
space:
mode:
Diffstat (limited to 'problems/partitionnumbers.py')
-rw-r--r--problems/partitionnumbers.py27
1 files changed, 27 insertions, 0 deletions
diff --git a/problems/partitionnumbers.py b/problems/partitionnumbers.py
new file mode 100644
index 0000000..9bb7cb6
--- /dev/null
+++ b/problems/partitionnumbers.py
@@ -0,0 +1,27 @@
+def compute_partitions(max_n):
+ partitions = [0] * (max_n + 1)
+ partitions[0] = 1
+
+ for i in range(1, max_n + 1):
+ for j in range(i, max_n + 1):
+ partitions[j] += partitions[j - i]
+
+ return partitions
+
+def main():
+ import sys
+ input = sys.stdin.read
+ data = input().split()
+
+ T = int(data[0])
+ queries = [int(data[i]) for i in range(1, T + 1)]
+
+ max_n = 100
+ partitions = compute_partitions(max_n)
+
+ results = [str(partitions[n]) for n in queries]
+
+ print("\n".join(results))
+
+if __name__ == "__main__":
+ main()