목록intersection (2)
호기심 많은 분석가

오늘은 친구의 흥미로운 질문을 다뤄보고자 한다. 이 친구의 사고 방식은 참 배울 점이 많은데, DataFrame을 groupby 시켰을 때는 list의 형태인지, index의 type은 무엇인지, 작업하면서 한번도 의문을 가져본 적 없는 것들을 물어봐서 허를 찔린다. 나도 이런 의문을 항상 품으면서 살아야할텐데, 오늘은 그 중 새로 알게 된 사실에 대해 이야기 해보고자 한다. Intersection 바로 intersection인데, 해석하면 교집합으로 두 그룹 사이에 동시에 존재하는 원소들을 의미한다. Python에서 이 친구를 사용하기 위해서는 유의해야할 점이 한 가지 존재하는데, list형태에서는 작동하지 않아 반드시 set의 형태로 변환해줘야한다는 점이다. 아래와 같이 실행되는 것을 확인할 수 있다..

import sys n, m = map(int, sys.stdin.readline().split()) lis = set(sys.stdin.readline().rstrip() for _ in range(n)) see = set(sys.stdin.readline().rstrip() for _ in range(m)) ans = sorted(lis.intersection(see)) print(len(ans)) for i in ans : print(i) Solved.ac의 CLASS별로 문제를 풀고 있는데 이번 CLASS의 주제는 메모리와 시간 초과인가 보다. list를 사용해서 풀었더니 어림도 없었고, 중복되는 항을 찾기 위해 set의 intersection이라는 문법을 사용하였다. 사전 순으로 출력을 위해 s..