aboutsummaryrefslogtreecommitdiff
path: root/challenge-148/lubos-kolouch/python/ch-1.py
blob: 776d87d20fbdbe0f59200e6ae3064fd31a2fba7a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#!/usr/bin/env python
# -*- coding: utf-8 -*-
def generate_eban_numbers(limit):
    words = {
        1: "one",
        2: "two",
        3: "three",
        4: "four",
        5: "five",
        6: "six",
        7: "seven",
        8: "eight",
        9: "nine",
        10: "ten",
        11: "eleven",
        12: "twelve",
        13: "thirteen",
        14: "fourteen",
        15: "fifteen",
        16: "sixteen",
        17: "seventeen",
        18: "eighteen",
        19: "nineteen",
        20: "twenty",
        30: "thirty",
        40: "forty",
        50: "fifty",
        60: "sixty",
        70: "seventy",
        80: "eighty",
        90: "ninety",
        100: "one hundred",
    }

    eban_numbers = []
    for num in range(1, limit + 1):
        if num <= 20 or num == 100:
            word = words[num]
        elif num < 100:
            if num % 10 == 0:
                word = words[num]
            else:
                word = words[num // 10 * 10] + " " + words[num % 10]
        else:
            word = words[num // 100] + " " + words[100] + " " + words[num % 100]

        if "e" not in word:
            eban_numbers.append(num)

    return eban_numbers


print(generate_eban_numbers(100))