목록전체 글 (92)
DecordRay
문제 : https://school.programmers.co.kr/learn/courses/30/lessons/12914 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 : 1. 어떻게 풀어야 할지 곰곰히 생각해보다가 그래프 x , 그리디 x , DP 인가?? 라고 생각해서 점화식을 구해봄 2. n이 1부터 6까지 일때 각 방법의 개수를 구해보니 i > 2일때, dp[n] = dp[n-2] + dp[n-1]이라는 점화식을 구할 수 있었음 코드 : def solution(n): dp = [0] * 2001 dp[1] = 1 dp[2] = 2 dp[3]..
문제 : https://school.programmers.co.kr/learn/courses/30/lessons/12985 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 : 1. N의 제한사항이 2의 20승 이하인 자연수였기 때문에 일반적인 배열을 사용할 경우 시간초과가 날 것 같다고 생각 2. deque를 사용하여 참가자를 2명씩 비교하는 함수(win)를 만들기로 함 3. 4가지의 조건문을 만들어서 해결 첫번째 조건문 : 만약 두 참가자 모두 chk_list에 있는 참가자라면 정답이므로 chk = True를 통해 반복문 탈출 두번째 조건문 : 비교..
문제 : https://school.programmers.co.kr/learn/courses/30/lessons/12980 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 : 1. 처음에 문제를 봤을때 그리디문제라고 생각 2. 입출력 예시로 주어진 5000이 그냥 주어지지 않았다고 생각해서 이리저리 생각을 해봄 0 -> 5000으로 가는 것과 5000 -> 0으로 가는 것 2가지 방법을 한번 생각해보았더니 뒤에서부터 구하면 더 쉽다고 판단 3. 주어진 n에서부터 0까지 가는 방법을 코드로 작성 2의 배수일 경우 n을 2로 나눠줌 2의 배수가 아닐 경우..
문제 : https://www.acmicpc.net/problem/2583 2583번: 영역 구하기 첫째 줄에 M과 N, 그리고 K가 빈칸을 사이에 두고 차례로 주어진다. M, N, K는 모두 100 이하의 자연수이다. 둘째 줄부터 K개의 줄에는 한 줄에 하나씩 직사각형의 왼쪽 아래 꼭짓점의 x, y좌표값과 오 www.acmicpc.net 풀이 : 1. 그래프 탐색 문제라고 생각하여 BFS 풀이법을 사용하기로 생각. 2. 기존 알고리즘 문제의 경우와 달리 y축이 뒤바뀌어 있기때문에 이부분을 원래 풀던 방식으로 변경하고자 (M-y2, M-y1)으로 코드 작성 3. 직사각형이 그려진 부분을 1 값으로 저장 -> graph[j][k] = 1 4. bfs 구현 -> 상 하 좌 우로 이동하면서 빈 영역의 개수를 ..