목록코딩 테스트 (187)
미소를뿌리는감자의 코딩
https://leetcode.com/problems/reverse-linked-list/description/ LeetCode - The World's Leading Online Programming Learning Platform Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 1. 접근 방법 이번 문제는 노드의 방향을 반대로 하여, head를 출력하는 문제이다. save, current, before을 이용해서 노드의 .next의 방향을 반대로 바꾸어 주었다. 이런식으로 노..
https://www.acmicpc.net/problem/11725 11725번: 트리의 부모 찾기 루트 없는 트리가 주어진다. 이때, 트리의 루트를 1이라고 정했을 때, 각 노드의 부모를 구하는 프로그램을 작성하시오. www.acmicpc.net 1. 접근 방법 이번 문제는 두 정점이 연결된 것들을 정리하면서 부터 시작이 되었다. 위 예제에 대해서 defaultdict(list) 를 통해 정리를 하였다. 1번 노드 : 1-6, 1-4 2번 노드: 2-4 3번 노드: 3-6, 3-5 4번 노드: 4-1, 4-2, 4-7 5번 노드: 5-3 6번 노드: 6-1, 6-3 7번 노드: 7-4 defaultdict(, {1: [6, 4], 6: [1, 3], 3: [6, 5], 5: [3], 4: [1, 2, ..
https://www.acmicpc.net/problem/1260 1260번: DFS와 BFS 첫째 줄에 정점의 개수 N(1 ≤ N ≤ 1,000), 간선의 개수 M(1 ≤ M ≤ 10,000), 탐색을 시작할 정점의 번호 V가 주어진다. 다음 M개의 줄에는 간선이 연결하는 두 정점의 번호가 주어진다. 어떤 두 정점 사 www.acmicpc.net 1. 접근 방법 DFS와 BFS 중 구현하기 더 어려웠던 것을 고르자면, DFS라고 할 수 있다. 1) BFS의 경우, 1번 노드(v라고 가정)가 가리키는 모든 노드를 돌고, 먼저 간 노드를 다음으로 방문하면 된다. 아래 예제로 시각화하여 다시 나타내 보자면 ... 일단, 노드들의 방문 경로를 list로 나타내 주었다. 추후 설명을 위해 4-5, 5-4를 넣어..
https://www.acmicpc.net/problem/5397 5397번: 키로거 첫째 줄에 테스트 케이스의 개수가 주어진다. 각 테스트 케이스는 한줄로 이루어져 있고, 강산이가 입력한 순서대로 길이가 L인 문자열이 주어진다. (1 ≤ L ≤ 1,000,000) 강산이가 백스페이스를 입 www.acmicpc.net 1. 접근 방법 처음에 접근했던 방법은 index를 이용한 list였다. 아래 코드를 이용했고, 보기 좋게 '시간 초과' 를 당했다.. ㅜ for i in range(int(input())): i = 0 result = [] for letter in input(): if letter == '': i += 1 if len(result) < i: i = len(result) elif lette..