Created
April 7, 2017 13:06
-
-
Save Swarchal/0f6477eb43f18b39fd165c025f7f1654 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/usr/bin/env python3 | |
| """ | |
| project euler # 17 | |
| If the numbers 1 to 5 are written out in words: one, two, three, four, five, | |
| then there are 3 + 3 + 5 + 4 + 4 = 19 letters used in total. | |
| If all the numbers from 1 to 1000 (one thousand) inclusive were written out in | |
| words, how many letters would be used? | |
| NOTE: Do not count spaces or hyphens. For example, 342 (three hundred and | |
| forty-two) contains 23 letters and 115 (one hundred and fifteen) contains 20 | |
| letters. The use of "and" when writing out numbers is in compliance with British | |
| usage. | |
| """ | |
| import inflect | |
| p = inflect.engine() | |
| def length(string): | |
| """length of string without spaces or hyphens""" | |
| return len(string.replace(" ", "").replace("-", "")) | |
| count = 0 | |
| for number in range(1, 1001): | |
| count += length(p.number_to_words(number)) | |
| print(count) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment