Помогите решить задачу про пирожные

Для праздничного чаепития необходимо купить n пирожных. В магазине продается всего два вида пирожных, причем пирожных одного вида осталось a штук, а пирожных другого вида осталось b штук. Пирожные одного вида считаются одинаковыми. Сколькими способами можно купить ровно n пирожных?

Входные данные

В первой строке входных данных записано число n — количество пирожных, которое нужно купить, во второй и третьей строке записаны числа a и b — количество пирожных каждого из двух видов, которые есть в магазине. Все числа — целые, от 1 до 100.

Выходные данные

Программа должна вывести одно целое число — количество различных способов купить n пирожных.

Примеры

Ввод

5
3
10

Вывод

4

Примечание

В примере из условия купить 5 пирожных можно 4 способами: 0 пирожных первого вида и 5 пирожных второго вида, 1 пирожное первого вида и 4 пирожных второго вида, 2 пирожных первого вида и 3 пирожных второго вида, 3 пирожных первого вида и 2 пирожное второго вида. Больше способов нет, так как в магазине есть только 3 пирожных первого вида.

Пробовал решить, но появляется ошибка

a = int(input())
b = int(input())
print(max(0, min(a, b) - max(0, n-b) + 1))

Ответы (1 шт):

Автор решения: becouse
  1. Если a+b< n, 0
  2. Если a+b>=n

    1. a< n, b< n a+b-n+1
    2. a< n, b>=n a+1
    3. a>=n, b< n b+1
    4. a>=n, b>=n n+1

Программа

n,a,b=map(int,input().split())

if a+b<n:
    print('0')
else:
    if a<n and b<n:
        print(a+b-n+1)
    if a<n and b>=n:
        print(a+1)
    if a>=n and b<n:
        print(b+1)
    if a>=n and b>=n:
        print(n+1)
→ Ссылка