https://www.acmicpc.net/problem/13414
리스트를 뒤집어서 중복제거를 하면 다시 클릭한 학생에 대해서 나중에 클릭한 부분이 남게되고, 다시 뒤집어서 K까지 출력하면된다.
JavaScript의 경우 Set이 순서를 기억하지만,
Python은 Set이 순서유지가 되지 않기때문에,
순서유지가 되면서 중복을 제거 할 수 있는 딕셔너리를 이용해 풀어준다.
input = __import__('sys').stdin.readline
K, L = map(int, input().split())
students = [input().rstrip() for _ in range(L)]
answer = list(dict.fromkeys(students[::-1]))[:-K-1:-1]
print("\n".join(answer))
const fs = require("fs");
const [n, ...students] = fs.readFileSync("/dev/stdin").toString().trim().split("\n");
const K = n.split(" ").map(Number)[0];
const answer = [...new Set(students.reverse())].reverse().splice(0, K);
console.log(answer.join("\n"));
9/18일 기준 파이썬 실행시간 1등한게 자랑