문제 1967번: 트리의 지름 파일의 첫 번째 줄은 노드의 개수 n(1 ≤ n ≤ 10,000)이다. 둘째 줄부터 n-1개의 줄에 각 간선에 대한 정보가 들어온다. 간선에 대한 정보는 세 개의 정수로 이루어져 있다. 첫 번째 정수는 간선이 연 www.acmicpc.net 이전에 풀었던 문제와 같은 방식의 문제였고, 재수강 중인 자료구조 강의의 오늘자 과제와 유사해서 금방 푼 문제. BOJ 1167 : 트리의 지름 [C++] 문제 문제를 읽고 생각난 건 두 가지였다. 그래프 DFS 그래서 dfs를 구현하고, 전체 정점에 대해서 dfs를 수행했다가 시간 초과로 틀렸다. 입력 vertex의 범위가 2개에서 10만 개였기 때문에, 시간 초 poops-here.tistory.com 루트에서 dfs 한번, 그리고 ..
전체 글
0. 작성 동기 코테 준비한다고 검색해봤는데 관련 글이 하나도 없어서 쓰는 거기도 하고(없는 게 아니라 없어진 건가?), 기록용으로 남겨두려고 쓰는 글이다. 1. 서류 자소서가 500자였기 때문에 내가 합격한 걸 보면 배수가 엄청 크거나, 불성실 기재자만 걸렀거나 한 것 같다. 2. 코테 총 4문제가 나왔고, 시간은 2시간(120분) 프로그래머스에서 진행됐고, 캠과 화면 공유, 폰으로 모니터, 키보드, 얼굴이 나오게 해야 했다. 책상에는 종이 한 장, 필기구 하나 외에는 X 물도 마실 수 없다. 문제 수준은 평이했던 것 같다. 처음 문제를 딱 봤을 때 '다 풀 수 있을 거 같은데?'라고 생각이 들었다. 물론 다 풀진 못했다. 다른 코딩 테스트와 마찬가지로 테스트 케이스는 문제당 하나, 두 개 정도 주어지..
문제 최단 거리 + 시간 제한 0.5초인걸 보고 다익스트라이지 않을까? 하고 다익스트라를 조졌더니 26%에서 시간 초과가 났다. 뭐가 문젠지 고민하다가 질문 검색탭을 보니(이 글), 출발 - 도착이 같은 경우가 있으면 priority_queue에 같은 노드가 여러번 들어가니, 간선 정보를 다 입력받고 각 노드에서 갈 수 있는 목적지를 비용 순으로 정렬해주면 된다고 한다. 평소에 스스로 반례를 찾아보는 경우가 잘 없는데, 아마 저런 생각은 반례를 찾다보면 생각나는게 아닐까 한다. #include #include #include #include #define INF 2000000000 std::vector edges[1001]; int dist[1001]; void dijkstra(int start) { d..