# -*- coding: utf-8 -*-

"""

http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=0106&lang=jp

"""

import sys





def solve(amount):

    """

    :param amount: ?????\???????????°?????????

    :return: ?????????

    """

    best_price = (amount + 199) // 200 * 380

    for a in range(amount // 200 + 1):

        for b in range(amount // 300 + 1):

            for c in range(amount // 500 + 1):

                for a1 in range(amount // 1000 + 1):

                    for b1 in range(amount // 1200 + 1):

                        for c1 in range(amount // 1500 + 1):

                            if a*200 + b*300 + c*500 + a1*1000 + b1*1200 + c1*1500 == amount:

                                price = a*380 + b*550 + c*850 + a1*1520 + b1*1870 + c1*2244

                                if price < best_price:

                                    best_price = price

    return best_price









def main(args):

    while True:

        amount = int(eval(input()))

        if amount == 0:

            break

        result = solve(amount)

        print(result)







if __name__ == '__main__':

    main(sys.argv[1:])
# -*- coding: utf-8 -*-

"""

http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=0106&lang=jp

"""

import sys





def solve(amount):

    """

    :param amount: ?????\???????????°?????????

    :return: ?????????

    """

    best_price = (amount + 199) // 200 * 380

    for a in range(amount // 200 + 1):

        for b in range(amount // 300 + 1):

            for c in range(amount // 500 + 1):

                for a1 in range(amount // 1000 + 1):

                    for b1 in range(amount // 1200 + 1):

                        for c1 in range(amount // 1500 + 1):

                            if a*200 + b*300 + c*500 + a1*1000 + b1*1200 + c1*1500 == amount:

                                price = a*380 + b*550 + c*850 + a1*1520 + b1*1870 + c1*2244

                                if price < best_price:

                                    best_price = price

    return best_price





def solve2(amount):

    """

    ???????¨???????????????¨?????????????????§???

    """

    packages = [(0, 0), (2, 380), (3, 550), (5, 850), (10, 1520), (12, 1870), (15, 2244)] # 1?¢??????????(100g??????)??¨??????????????¢l

    # dp??¨???2?¬??????????????¨?????????????(100g??????)?????????????????¨??§??????packages????¨????

    # 999999...??????INF??¨?????? (phthon 3.5??\??????????????????math.inf????????¨??§??????)

    cart = [[99999999] * (amount//100 + 1) for _ in range(len(packages))]

    for i in range(len(packages)):

        cart[i][0] = 0          #  0g???????????\????????´??????0???????????????



    for i in range(1, len(packages)):

        for j in range(1, len(cart[0])):

            w = packages[i][0]  #  ??????

            p = packages[i][1]  #  ??????

            if j < w:

                cart[i][j] = cart[i-1][j]

            else:

                # ???????????????????????????????????????????????????????????????????????????????¨????

                cart[i][j] = min(cart[i-1][j], cart[i-1][max(0, j-w)]+p, cart[i][max(0, j-w)]+p)

    return cart[-1][-1]





def main(args):

    while True:

        amount = int(eval(input()))

        if amount == 0:

            break

        #result = solve(amount)

        #print(result)

        result = solve2(amount)

        print(result)





if __name__ == '__main__':

    main(sys.argv[1:])
# -*- coding: utf-8 -*-
"""
http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=0106&lang=jp
"""
import sys


def solve(amount):
    """
    :param amount: ?????\???????????°?????????
    :return: ?????????
    """
    best_price = (amount + 199) // 200 * 380
    for a in range(amount // 200 + 1):
        for b in range(amount // 300 + 1):
            for c in range(amount // 500 + 1):
                for a1 in range(amount // 1000 + 1):
                    for b1 in range(amount // 1200 + 1):
                        for c1 in range(amount // 1500 + 1):
                            if (
                                a * 200
                                + b * 300
                                + c * 500
                                + a1 * 1000
                                + b1 * 1200
                                + c1 * 1500
                                == amount
                            ):
                                price = (
                                    a * 380
                                    + b * 550
                                    + c * 850
                                    + a1 * 1520
                                    + b1 * 1870
                                    + c1 * 2244
                                )
                                if price < best_price:
                                    best_price = price
    return best_price


def main(args):
    while True:
        amount = int(eval(input()))
        if amount == 0:
            break
        result = solve(amount)
        print(result)


if __name__ == "__main__":
    main(sys.argv[1:])

# -*- coding: utf-8 -*-
"""
http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=0106&lang=jp
"""
import sys


def solve(amount):
    """
    :param amount: ?????\???????????°?????????
    :return: ?????????
    """
    best_price = (amount + 199) // 200 * 380
    for a in range(amount // 200 + 1):
        for b in range(amount // 300 + 1):
            for c in range(amount // 500 + 1):
                for a1 in range(amount // 1000 + 1):
                    for b1 in range(amount // 1200 + 1):
                        for c1 in range(amount // 1500 + 1):
                            if (
                                a * 200
                                + b * 300
                                + c * 500
                                + a1 * 1000
                                + b1 * 1200
                                + c1 * 1500
                                == amount
                            ):
                                price = (
                                    a * 380
                                    + b * 550
                                    + c * 850
                                    + a1 * 1520
                                    + b1 * 1870
                                    + c1 * 2244
                                )
                                if price < best_price:
                                    best_price = price
    return best_price


def solve2(amount):
    """
    ???????¨???????????????¨?????????????????§???
    """
    packages = [
        (0, 0),
        (2, 380),
        (3, 550),
        (5, 850),
        (10, 1520),
        (12, 1870),
        (15, 2244),
    ]  # 1?¢??????????(100g??????)??¨??????????????¢l
    # dp??¨???2?¬??????????????¨?????????????(100g??????)?????????????????¨??§??????packages????¨????
    # 999999...??????INF??¨?????? (phthon 3.5??\??????????????????math.inf????????¨??§??????)
    cart = [[99999999] * (amount // 100 + 1) for _ in range(len(packages))]
    for i in range(len(packages)):
        cart[i][0] = 0  #  0g???????????\????????´??????0???????????????
    for i in range(1, len(packages)):
        for j in range(1, len(cart[0])):
            w = packages[i][0]  #  ??????
            p = packages[i][1]  #  ??????
            if j < w:
                cart[i][j] = cart[i - 1][j]
            else:
                # ???????????????????????????????????????????????????????????????????????????????¨????
                cart[i][j] = min(
                    cart[i - 1][j],
                    cart[i - 1][max(0, j - w)] + p,
                    cart[i][max(0, j - w)] + p,
                )
    return cart[-1][-1]


def main(args):
    while True:
        amount = int(eval(input()))
        if amount == 0:
            break
        # result = solve(amount)
        # print(result)
        result = solve2(amount)
        print(result)


if __name__ == "__main__":
    main(sys.argv[1:])

+def solve2(amount): +    """ +    ???????¨???????????????¨?????????????????§??? +    """ +    packages = [ +        (0, 0), +        (2, 380), +        (3, 550), +        (5, 850), +        (10, 1520), +        (12, 1870), +        (15, 2244), +    ]  # 1?¢??????????(100g??????)??¨??????????????¢l +    # dp??¨???2?¬??????????????¨?????????????(100g??????)?????????????????¨??§??????packages????¨???? +    # 999999...??????INF??¨?????? (phthon 3.5??\??????????????????math.inf????????¨??§??????) +    cart = [[99999999] * (amount // 100 + 1) for _ in range(len(packages))] +    for i in range(len(packages)): +        cart[i][0] = 0  #  0g???????????\????????´??????0??????????????? +    for i in range(1, len(packages)): +        for j in range(1, len(cart[0])): +            w = packages[i][0]  #  ?????? +            p = packages[i][1]  #  ?????? +            if j < w: +                cart[i][j] = cart[i - 1][j] +            else: +                # ???????????????????????????????????????????????????????????????????????????????¨???? +                cart[i][j] = min( +                    cart[i - 1][j], +                    cart[i - 1][max(0, j - w)] + p, +                    cart[i][max(0, j - w)] + p, +                ) +    return cart[-1][-1] + + -        result = solve(amount) +        # result = solve(amount) +        # print(result) +        result = solve2(amount)