# -*- coding: utf-8 -*-
"""
金額とお札の枚数（プログラム）
"""
# これは，難易度４を達成するプログラムのソースコードです．


def main():
    # 面倒なので，最初から千で割っておく
    kingaku = int(input("金額：")) // 1000
    maisuu  = int(input("枚数："))
    print()  # 採点の都合上の空行 

    # できるだけ５千円札にして，半端を千円札にする
    osatsu = [0, (kingaku // 5), (kingaku % 5)]
    # 指定の枚数との差を算出
    maisuu -= osatsu[1] + osatsu[2]
    # 枚数の過不足が極端な場合にループ数を削減するための計算
    if maisuu > 4:
        maisuu_sub = maisuu // 4
        osatsu[1] -= maisuu_sub
        osatsu[2] += maisuu_sub * 5
        maisuu -= maisuu_sub * 4
    elif maisuu < -1:
        osatsu[1] += maisuu * 2
        osatsu[0] -= maisuu
        maisuu = 0

    # ５千円札２枚で１万円札，千円札５枚で５千円札
    # この交換を５千円札がある限り続ける
    # とはいえ，ピッタリになったら終了
    while (maisuu != 0) and (osatsu[1] >= 0):
        # 指定の枚数より残りの枚数が
        # 多いなら５千円札→千円札×５
        if maisuu > 0:
            osatsu[1] -= 1
            osatsu[2] += 5
            maisuu -= 4
        # 少ないなら５千円札×２→１万円札
        else:
            osatsu[1] -= 2
            osatsu[0] += 1
            maisuu += 1

    # ５千円札の枚数が負でない状態でピッタリの枚数なら
    # 組み合わせが見つかった
    if (maisuu == 0) and (osatsu[1] >= 0):
        print(f"１万円札は {osatsu[0]} 枚")
        print(f"５千円札は {osatsu[1]} 枚")
        print(f"　千円札は {osatsu[2]} 枚")
    else:
        print("組み合わせは見つかりませんでした")
    
    input("\nEnterを押してプログラムを完全終了")



if __name__ == "__main__":
    main()
