Эффективная сортировка

Начинаю изучать Python самостоятельно, решаю задачу:

Требуется написать программу, определяющую, какие клавиши сломаются в процессе заданного варианта эксплуатации клавиатуры.

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

Первая строка входных данных содержит целое число n (1≤n≤100) — количество клавиш на клавиатуре. Вторая строка содержит n целых чисел — c1,c2,…,cn, где ci(1≤ci≤100000) — количество нажатий, выдерживаемых i-ой клавишей. Третья строка содержит целое число k (1≤k≤100000) — общее количество нажатий клавиш, и последняя строка содержит k целых чисел pj(1≤pj≤n) — последовательность нажатых клавиш.

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

Необходимо вывести n строк, содержащих информацию об исправности клавиш. Если i-ая клавиша сломалась, то i-ая строка должна содержать слово “yes” (без кавычек), если же клавиша работоспособна — слово “no”.

Примеры

Ввод

5
1 50 3 4 3
16
1 2 3 4 5 1 3 3 4 5 5 5 5 5 4 5

Вывод

yes
no
no
no
yes

Написала программу, но в программе сдачи пишет, что ответ неверный. Хотя в Python Shell всё работает.

n = int(input()) 
c = list(map(int, input().split()[:n]))
k = int(input())
p = list(map(int, input().split()[:k])) 
cnt = [0] * (n+1) 
press = list(range(1, n+1))
for el in p: 
    cnt[el] += 1
cnt.remove(0)
for i in range(n):
    if cnt[i] > c[i]:
        print('no')
    else:
        print('yes')

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

Автор решения: Pozitiffa
 n = int(input()) 
max_num_pressed = list(map(int, input().split()[:n])) 
k = int(input()) 
p = list(map(int, input().split()[:k])) 
cnt = [0] * (n+1)
for el in p:
    cnt[el-1] += 1
for i in range(n):
    if cnt[i] > max_num_pressed[i]:
        print('no')
    else:
        print('yes')

Вот мой код с исправлениями, еще раз спасибо за помощь!

→ Ссылка