Нужна помощь с олимпиадной задачей

В одном курином ресторане можно купить:

1 ножку + 1 крыло, 1 ножку + 1 бедро, 1 бедро, 2 крыла, 3 крыла. Требуется определить, можно ли купить ровно k крыльев, n ножек и b бедер.

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

Вводятся три числа k, n, b. Все числа целые неотрицательные, не превосходящие 100.

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

Выведите слово YES, если купить указанный набор можно, NO — если нельзя (заглавными латинскими буквами).]

Мой код(выдает неверный ответ в проверяющей системе):

k=int(input())
n=int(input())
b=int(input())
kp1=k+n
kp2=n+b
kp3=b
kp4=2*k
kp5=3*k

if n!=0 and k==0:
    print('NO')
else:
    if k+b<n:
        print('NO')
    else:
        if kp5>=0 and kp2>=0 and kp3>=0:
            if (k-2*kp4-kp1)%3==0:
                print('NO')
            else:
                print('YES')
        else:
            print('NO')

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

Автор решения: Alioshca Z

Сваял нечто. Авось будет работать)

k=int(input())
n=int(input())
b=int(input())

if n > 0:
    if (k + b) >= n:
        if n == (k + b):
            print('YES')
        else:
            if k > 0:
                if (k - b) % 2 == 0 or (k - b) % 3 == 0:
                    print('YES')
                else:
                    print('NO')
            else:
                print('YES')
    else:
        print('NO')
else:
    if k > 0 and b > 0:
        if k % 2 == 0 or k % 3 == 0:
            print('YES')
        else:
            print('NO')
    else:
        print('NO') # Эту строчку поменять на YES, если в рестике можно купить ноль всех куриных частей
→ Ссылка
Автор решения: n1tr0xs

Можно создать список возможных покупок и проверить на вхождение

k=int(input()) 
n=int(input()) 
b=int(input())
my_list = [k, n, b]
# [крыло, ножка, бедро]
allowed = [[1,1,0], [0,1,1], [0,0,1],[2,0,0],[3,0,0]]
if my_list in allowed:
    print('YES')
else:
    print('NO')
→ Ссылка
Автор решения: MikhailS
k = int(input())
n = int(input())
b = int(input())

if n > b:
    if (n - b) > k:
        print('NO')
    else:
        if k - (n - b) == 1:
            print('NO')
        else:
            print('YES')
elif k == 1:
    print('NO')
else:
    print('YES')
→ Ссылка