HackerRank Ransom Note

x·2021년 5월 2일
0

problem-solving

목록 보기
9/18

note에 있는 단어들을 magazine에 있는 단어들이 포함할 수 있으면 Yes, 아니면 No 출력

note_dict, magazine_dict에 각 단어를 key로 하고 개수를 value에 누적한다

note_dict에 있는 단어가 magazine_dict에는 있어야 하고 동일 key일 때 magazine_dict의 단어 수가 note_dict 단어 수 이상이어야 한다

#!/bin/python3

def checkMagazine(magazine, note):
    magazine_dict, note_dict = {}, {}

    for v in magazine:
        magazine_dict[v] = magazine_dict[v] + 1 if v in magazine_dict else 1

    for v in note:
        note_dict[v] = note_dict[v] + 1 if v in note_dict else 1

    for v in note:
        if v not in magazine_dict or note_dict[v] > magazine_dict[v]:
            print('No')
            return

    print('Yes')


if __name__ == '__main__':
    mn = input().split()

    m = int(mn[0])

    n = int(mn[1])

    magazine = input().rstrip().split()

    note = input().rstrip().split()

    checkMagazine(magazine, note)

0개의 댓글