Buggy python submission (verdict: Time Limit Exceeded):
N_n_osatsu, Y_sum_money = map(int, input().split())

if N_n_osatsu*1000 > Y_sum_money or N_n_osatsu*10000 < Y_sum_money:
    print("-1 -1 -1")
    exit()

rest_money = Y_sum_money
n_each_osatsu_list = [] # 万札、五千円札、千円札の枚数の2重リスト

for n_10000 in range(int(Y_sum_money/10000 +1)): # 万札枚数。0枚からスタート
    rest_money = Y_sum_money - 10000*n_10000
    if rest_money == 0: # 万札だけで目標金額になる場合
        n_each_osatsu_list.append([n_10000, 0, 0])
        break
    if rest_money < 0: # もう万札が追加できない場合
        break
    for n_5000 in range(int(rest_money/5000 + 1)): # 万札枚数決定後に5000円の枚数を探索。5000円0枚からスタート
        if (rest_money - n_5000*5000) >= 0:
            n_1000 = int((rest_money - n_5000*5000)/1000)
            n_each_osatsu_list.append([n_10000, n_5000, n_1000])

n_sum_osatsu_list = [sum(x) for x in n_each_osatsu_list] # お札合計枚数のリスト

try:
    print(*n_each_osatsu_list[n_sum_osatsu_list.index(N_n_osatsu)], sep=" ")
except:
    print("-1 -1 -1")

Fixed submission:
N_n_osatsu, Y_sum_money = map(int, input().split())

rest_money = Y_sum_money
rest_n_osatsu = N_n_osatsu
n_each_osatsu_list = [] # 万札、五千円札、千円札の枚数の2重リスト

def skip_search(rest_money, rest_n_osatsu):  # 明らかに無理な場合、処理をスキップ。これを入れないと制限時間超過
    if rest_n_osatsu*1000 > rest_money or rest_n_osatsu*10000 < rest_money:
        return True

for n_10000 in range(int(Y_sum_money/10000 +1)): # 万札枚数。0枚からスタート
    rest_money = Y_sum_money - 10000*n_10000
    rest_n_osatsu = N_n_osatsu - n_10000
    if skip_search(rest_money, rest_n_osatsu):
        break

    if rest_money == 0: # 万札だけで目標金額になる場合
        n_each_osatsu_list.append([n_10000, 0, 0])
        break

    for n_5000 in range(int(rest_money/5000 + 1)): # 万札枚数決定後に5000円の枚数を探索。5000円0枚からスタート
        rest_money = Y_sum_money - 10000*n_10000 - 5000*n_5000
        rest_n_osatsu = N_n_osatsu - n_10000 - n_5000
        if skip_search(rest_money, rest_n_osatsu):
            break
        n_1000 = int(rest_money/1000)
        n_each_osatsu_list.append([n_10000, n_5000, n_1000])

n_sum_osatsu_list = [sum(x) for x in n_each_osatsu_list] # お札合計枚数のリスト

try:
    print(*n_each_osatsu_list[n_sum_osatsu_list.index(N_n_osatsu)], sep=" ")
except:
    print("-1 -1 -1")

Buggy python submission (verdict: Time Limit Exceeded):
N_n_osatsu, Y_sum_money = map(int, input().split())

rest_money = Y_sum_money
n_each_osatsu_list = [] # 万札、五千円札、千円札の枚数の2重リスト

for n_10000 in range(int(Y_sum_money/10000 +1)): # 万札枚数。0枚からスタート
    rest_money = Y_sum_money - 10000*n_10000
    if rest_money == 0: # 万札だけで目標金額になる場合
        n_each_osatsu_list.append([n_10000, 0, 0])
        break
    if rest_money < 0: # もう万札が追加できない場合
        break
    for n_5000 in range(int(rest_money/5000 + 1)): # 万札枚数決定後に5000円の枚数を探索。5000円0枚からスタート
        if (rest_money - n_5000*5000) >= 0:
            n_1000 = int((rest_money - n_5000*5000)/1000)
            n_each_osatsu_list.append([n_10000, n_5000, n_1000])

n_sum_osatsu_list = [sum(x) for x in n_each_osatsu_list] # お札合計枚数のリスト

try:
    print(*n_each_osatsu_list[n_sum_osatsu_list.index(N_n_osatsu)], sep=" ")
except:
    print("-1 -1 -1")

Fixed submission:
N_n_osatsu, Y_sum_money = map(int, input().split())

rest_money = Y_sum_money
rest_n_osatsu = N_n_osatsu
n_each_osatsu_list = [] # 万札、五千円札、千円札の枚数の2重リスト

def skip_search(rest_money, rest_n_osatsu):  # 明らかに無理な場合、処理をスキップ。これを入れないと制限時間超過
    if rest_n_osatsu*1000 > rest_money or rest_n_osatsu*10000 < rest_money:
        return True

for n_10000 in range(int(Y_sum_money/10000 +1)): # 万札枚数。0枚からスタート
    rest_money = Y_sum_money - 10000*n_10000
    rest_n_osatsu = N_n_osatsu - n_10000
    if skip_search(rest_money, rest_n_osatsu):
        break

    if rest_money == 0: # 万札だけで目標金額になる場合
        n_each_osatsu_list.append([n_10000, 0, 0])
        break

    for n_5000 in range(int(rest_money/5000 + 1)): # 万札枚数決定後に5000円の枚数を探索。5000円0枚からスタート
        rest_money = Y_sum_money - 10000*n_10000 - 5000*n_5000
        rest_n_osatsu = N_n_osatsu - n_10000 - n_5000
        if skip_search(rest_money, rest_n_osatsu):
            break
        n_1000 = int(rest_money/1000)
        n_each_osatsu_list.append([n_10000, n_5000, n_1000])

n_sum_osatsu_list = [sum(x) for x in n_each_osatsu_list] # お札合計枚数のリスト

try:
    print(*n_each_osatsu_list[n_sum_osatsu_list.index(N_n_osatsu)], sep=" ")
except:
    print("-1 -1 -1")