DefaultDict Tutorial

  • + 0 comments
    # my solution uses enumerate() to create the list of indices to be printed. If a word/letter is not found in group A, minus one is printed instead.
    from collections import defaultdict
    
    d = defaultdict(list)
    n, m = input().split()
    for i in range(int(n)):
        d["A"].append(input())
    for j in range(int(m)):
        d["B"].append(input())
        
    for letter in d["B"]:
        if letter in d["A"]:
            b_list = [str(i+1) for i, x in enumerate(d["A"]) if x == letter]
            print(" ".join(b_list))
        else:
            print(-1)