summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorReiner Herrmann <reiner@reiner-h.de>2009-10-21 14:17:25 +0200
committerReiner Herrmann <reiner@reiner-h.de>2014-08-31 20:11:44 +0200
commitf5f2dc6fb2a1a4fad87328515bca34303b621e3d (patch)
tree50ae299e9dc0645dbb5c4e18291a2d52cf511925
parentbd24a1a21abb828076cb3e4b5ebe2ef48220f27f (diff)
project euler solution 17
-rw-r--r--src/projecteuler/017.py31
1 files changed, 31 insertions, 0 deletions
diff --git a/src/projecteuler/017.py b/src/projecteuler/017.py
new file mode 100644
index 0000000..8bb95cf
--- /dev/null
+++ b/src/projecteuler/017.py
@@ -0,0 +1,31 @@
+n1 = ["", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"]
+n2 = ["ten", "eleven", "twelve", "thirteen", "fourteen", "fifteen", "sixteen", "seventeen", "eighteen", "nineteen"]
+n3 = ["twenty", "thirty", "forty", "fifty", "sixty", "seventy", "eighty", "ninety"]
+n4 = ["hundred"]
+n5 = ["thousand"]
+
+numbers = ""
+for i in range(1, 1001):
+ current = ""
+
+ if (i % 10000) / 1000 > 0:
+ current += n1[(i%10000)/1000] + n5[0]
+ if i % 1000 > 0:
+ current += "and"
+
+ if (i % 1000) / 100 > 0:
+ current += n1[(i%1000)/100] + n4[0]
+ if i % 100 > 0:
+ current += "and"
+
+ if i % 100 <= 9:
+ current += n1[i%10]
+ elif i % 100 <= 19:
+ current += n2[(i%10)-10]
+ else:
+ current += n3[(i%100)/10-2] + n1[i%10]
+
+ numbers += current
+
+print len(numbers)
+