Предмет: Информатика, автор: 1MaTBeu1

Даю 100 Баллов! Пж. выполни на Pyrhon
Однажды вы пришли в один необычный ресторан, в котором подают N блюд, причем для каж - дого блюда вам известно, насколько оно вкусное — i -е блюдо имеет параметр вкуса A i (чем больше параметр блюда, тем блюдо вкуснее). Однако официант вам сообщил, что сегодня недоступно K блюд с номерами B1, B2, ..., B.
Вы, конечно, хотите попробовать одно из самых вкусных блюд. Определите, удастся ли вам сделать это сегодня или придется пробовать еще раз.

Формат входных данных
В первой строке вводится два целых числа N, K(1 ≤ K ≤ N ≤ 100) — число блюд всего и число недоступных блюд соответственно.
В следующей строке вводятся N целых чисел A1, A2, ..., AN (1 ≤ Ai ≤100) — параметр вкуса для каждого из блюд.

В следующей строке вводятся KKK целых чисел B1, B2, ..., BK(1 ≤ Bi ≤ N) — номера недоступных блюд.

Формат выходных данных
Выведите «Yes», если вы сможете попробовать одно из самых вкусных блюд и «No» иначе.

Замечание
В первом примере самое вкусное блюдо – это блюдо 4, однако, оно сегодня недоступно, поэтому ответ «No».
Во втором примере блюдо 2 является одним из самых вкусных и доступно сегодня, поэтому ответ «Yes».
В третьем примере блюдо 1 является самым вкусным и доступно сегодня, поэтому ответ «Yes».

Ответы

Автор ответа: shumik666
0

Ответ:

# считываем исходные данные

print("N K:")

mas1 = list(map(int, input().split()))

print("An:")

mas2 = list(map(int, input().split()))

print("Bk")

mas3 = list(map(int, input().split()))

# полагаем, что лучшее блюдо под номером 1

bestDishesNums = [1]

best = mas2[0]

# проходим по

for i in range(1, len(mas2)):

   # добавляем 1, т.к. номера блюд начинаются с 1,

   # а элементы массива идут с нуля

   actualNum = i+1

   # в случае если несколько блюд имеют наивысшее качество

   # нужно запомнить их все

   if mas2[i] == best:

       bestDishesNums.append(actualNum)

   # если нашли блюдо с качество лучше, чем у блюда ранее,

   # запоминаем его качество и обнуляем массив с номерами блюд

   elif mas2[i] > best:

       best = mas2[i]

       bestDishesNums = [actualNum]

# удаляем из массива номеров лучших блюд номера отсутствующих блюд

for j in range(len(mas3)):

   if mas3[j] in bestDishesNums:

       bestDishesNums.remove(mas3[j])

# если в массиве есть хотя бы одни номер лучшего блюда, то выводим YES

if len(bestDishesNums) > 0:

   print("YES! Best dishes nums:", bestDishesNums, " with quality = ", best)

else:

   print("NO. Best dish not available today :(")

Объяснение:

Объяснение дал в коде. Если нужно чтоб в ответе выводилось чисто "YES", "NO", просто удали лишнее, т.е. запиши тупо print("NO") или print("YES")

Похожие вопросы