Помогите решить задачу про пирожные
Для праздничного чаепития необходимо купить 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 шт):
- Если a+b< n, 0
Если a+b>=n
- a< n, b< n a+b-n+1
- a< n, b>=n a+1
- a>=n, b< n b+1
- 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)