문제풀이/백준2 오답 노트 이분탐색을 할 때 주의할 것 백준 2805 정답률이 20% 초반인 문제 였고 그만큼 코너케이스가 많은 문제였다. 처음엔 딱 1번 틀렸고, 바로 수정해서 맞는 코드를 작성했으나... Python으로 제출해서 시간초과가 났고 PyPy로 제출 할 때엔 sys.setrecursionlimit을 지우지 않아서 메모리 초과가 났다. 결국 맞는 코드를 PyPy로 제출하여 통과를 하게 되었지... 시간은 0.5초 가량이 소요 되었다. 여기서 알아 두어야 할 것. PyPy가 실행속도가 Python 보다는 빠른 경우가 많다. (늘 빠른 것은 아니며, 인풋이 클 때에만) 다만 PyPy는 메모리를 Python보다는 많이 잡아먹는다. 특히 sys.setrecursionlimit은 메모리를 그런데 채점 현황을 보니 이상하다. 사람들이 Python 으로 제출해서도 2초~5.. 2022. 6. 12. 오답 노트 (BFS를 할 때 주의 할 것) 백준 2606 오랜만에 백준 DFS/BFS 문제를 다시 풀어보기로 하였다. 2606번: 바이러스 첫째 줄에는 컴퓨터의 수가 주어진다. 컴퓨터의 수는 100 이하이고 각 컴퓨터에는 1번 부터 차례대로 번호가 매겨진다. 둘째 줄에는 네트워크 상에서 직접 연결되어 있는 컴퓨터 쌍의 수가 주어 www.acmicpc.net 당연히 너무 직관적이고 바로 맞출 줄 알았는데, (DFS는 그러하였다.) BFS로 풀어보려 하니 자꾸 틀렸다고 하고...... ㅠㅠ 창피하다. 내가 왜 틀렸는지 정리해보겠다. 아래는 오답 코드 : # ================= # 틀린 코드 (run time error type error) # ================= import sys from collections import deque de.. 2022. 6. 11. 이전 1 다음