목록Python (2)
공부하는 스누피
https://programmers.co.kr/learn/courses/30/lessons/17684 코딩테스트 연습 - [3차] 압축 TOBEORNOTTOBEORTOBEORNOT [20, 15, 2, 5, 15, 18, 14, 15, 20, 27, 29, 31, 36, 30, 32, 34] programmers.co.kr 생각과정 - 딕셔너리를 만들어 새로운 문자 패턴을 저장한다. - 주어진 문자열을 순회하면서 현재 입력된 문자가 딕셔너리에 있는지 확인하고, 없으면 추가한다. - 현재 입력된 문자의 다음 문자가 딕셔너리에 있는지 확인하고, 없으면 추가한다. 이때 현재 입력 문자에 다음 문자를 더한 패턴도 딕셔너리에 추가하고 다음 반복으로 바로 넘어간다. ex) 현재:A 다음:B일때, B가 딕셔너리에 없..
https://www.acmicpc.net/problem/1463 1463번: 1로 만들기 첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다. www.acmicpc.net 생각과정 - n이 1일 경우 0, 2일 경우 1, 3일 경우 1번의 연산으로 1을 만들 수 있다. - 일차원 배열을 만들어 인덱스값에 대한 최소 연산 횟수를 저장한다. - 4부터 n까지 순회하면서 최솟값을 구한다. (Bottom-Up 방식) - 먼저 3이나 2로 나누어 떨어지는지 확인한다. 나누어 떨어진다면, n/3 또는 n/2의 값에서 1을 더한 값을 배열에 저장한다. 앞에서 n/3의 최솟값을 구해 놓았으니 1을 더하기만 하면 된다. - 1을 빼는 연산은 2나 3으로 나누어 떨어지지 않을 때 수행하거나, 앞의..