목록알고리즘문제풀이/프로그래머스 (11)
쉽지않은 블로그

https://programmers.co.kr/learn/courses/30/lessons/81305 코딩테스트 연습 - 시험장 나누기 3 [12, 30, 1, 8, 8, 6, 20, 7, 5, 10, 4, 1] [[-1, -1], [-1, -1], [-1, -1], [-1, -1], [8, 5], [2, 10], [3, 0], [6, 1], [11, -1], [7, 4], [-1, -1], [-1, -1]] 40 programmers.co.kr 문제 요약 시험장이 트리의 형태로 주어지고 각각 시험장에 몇 명에 인원들이 있는지 입력으로 주어진다 시험장을 k개의 그룹으로 묶은 후 k개의 그룹 중 가장 인원이 많은 그룹의 인원수의 최솟값을 구하라. 나의 풀이 이 문제를 처음 보자마자 이 문제가 생각났다. 사..

https://programmers.co.kr/learn/courses/30/lessons/81304 코딩테스트 연습 - 미로 탈출 4 1 4 [[1, 2, 1], [3, 2, 1], [2, 4, 1]] [2, 3] 4 programmers.co.kr 문제 요약 그래프 공간 속에서 일부 정점 중 함정이 있다 함정의 역할은 밟는 순간 해당 정점과 연결된 모든 간선을 뒤집힌다 모든 간선은 cost 가 다르다 시작 정점이 주어지고 도착 정점이 주어질 경우 최소비용을 계산하라 나의 풀이 이 문제는 꽤 오래 생각해야 풀 수 있었다. 이 문제는 언듯 보면 최단경로를 계산하는 여느 문제들과 다를 점이 없지만 함정 때문에 간선이 이동하면서 실시간으로 지도가 바뀐다. 갔던 곳을 다시 방문해도 된다(사실 다시 방문해야만 ..

https://programmers.co.kr/learn/courses/30/lessons/81303 코딩테스트 연습 - 표 편집 8 2 ["D 2","C","U 3","C","D 4","C","U 2","Z","Z"] "OOOOXOOO" 8 2 ["D 2","C","U 3","C","D 4","C","U 2","Z","Z","U 1","C"] "OOXOXOOO" programmers.co.kr 문제 요약 긴 길이의 배열이 있는 상황이다 배열의 특정 칸을 가리키는 커서라는 개념이 존재하고 커맨드 U, D, C, Z에 따라 커서를 이동하거나 , 배열의 특정 칸을 삭제, 복구하는 문제 문제 속 요구사항이 명확하다 나의 풀이 이 문제에서 가장 중요한 것은 입력 조건을 정확히 이해해야 한다. 그중에서도 "cmd..

https://programmers.co.kr/learn/courses/30/lessons/81302 코딩테스트 연습 - 거리두기 확인하기 [["POOOP", "OXXOX", "OPXPX", "OOXOX", "POXXP"], ["POOPX", "OXPXP", "PXXXO", "OXXXO", "OOOPP"], ["PXOPX", "OXOXP", "OXPOX", "OXXOP", "PXPOX"], ["OOOXX", "XOOOX", "OOOXX", "OXOOX", "OOOOO"], ["PXPXP", "XPXPX", "PXPXP", "XPXPX", "PXPXP"]] [1, 0, 1, 1, 1] programmers.co.kr 문제 요약 5x5 책상이 존재하는 공간에 학생들은 2칸(상, 하, 좌, 우) 이내에 있을 ..

https://programmers.co.kr/learn/courses/30/lessons/81301 코딩테스트 연습 - 숫자 문자열과 영단어 네오와 프로도가 숫자놀이를 하고 있습니다. 네오가 프로도에게 숫자를 건넬 때 일부 자릿수를 영단어로 바꾼 카드를 건네주면 프로도는 원래 숫자를 찾는 게임입니다. 다음은 숫자의 일부 자 programmers.co.kr 문제 요약 숫자와 (0~9까지의 ) 영단어( ex | "zero" , "one"....)가 섞여있는 상태의 문자열로 주어질 경우 이를 숫자로 반환하여라 ex|. "03fiveseven8" => 03578 나의 풀이 C++ 보다는 문자열 처리에 편리한 javascript , python을 사용하고 replace와 같은 내장 함수를 사용했다. 길이가 50..

programmers.co.kr/learn/courses/30/lessons/72416 코딩테스트 연습 - 매출 하락 최소화 CEO를 포함하여 모든 직원은 팀장 또는 팀원이라는 직위를 가지고 있으며 그림에서는 팀장과 팀원의 관계를 화살표로 표시하고 있습니다. 화살표가 시작되는 쪽의 직원은 팀장, 화살표를 받는 programmers.co.kr 문제 요약 1. 사원의 하루 평균 매출액이 배열로 주어지고, 회사 조직도가 트리 형태의 배열에 담겨서 주어진다. 2. 팀에서 한 명은 회의에 출석해야 된다고 하였을 때 매출 하락의 최소를 출력한다. 나의 풀이 A팀에서 누가 나갈지 결정하는 순간 해당 결정이 아래 B, C, D에서 사원을 선택하는 것에도 영향을 끼친다고 생각하여 완전 탐색이나 그리디같이 생각할 수가 없..
programmers.co.kr/learn/courses/30/lessons/72415 코딩테스트 연습 - 카드 짝 맞추기 [[1,0,0,3],[2,0,0,0],[0,0,0,2],[3,0,1,0]] 1 0 14 [[3,0,0,2],[0,0,1,0],[0,1,0,0],[2,0,0,3]] 0 1 16 programmers.co.kr 문제 요약 1.현재 카드가 놓인 상태를 나타내는 2차원 배열 board와 커서의 처음 위치 r, c가 매개변수로 주어질 때, 모든 카드를 제거하기 위한 키 조작 횟수의 최솟값을 return 하도록 solution 함수를 완성해 주세요. 나의 풀이 카드가 최대 6종류이고 하나의 카드종류에 각각 2개씩 있으므로 제거할때의 순서의 가짓수는

programmers.co.kr/learn/courses/30/lessons/72414 코딩테스트 연습 - 광고 삽입 시간을 나타내는 HH, H1, H2의 범위는 00~99, 분을 나타내는 MM, M1, M2의 범위는 00~59, 초를 나타내는 SS, S1, S2의 범위는 00~59까지 사용됩니다. 잘못된 시각은 입력으로 주어지지 않습니다. (예: 04:60:24, 11 programmers.co.kr 문제요약 1.동영상의 재생시간, 광고 재생시간 , 사람들의 시청시간이 구간으로 주어진다 2.광고의 누적시청시간의 합이 최대가 되게 하는 광고삽입시각중을 출력한다 나의 풀이 예시로 나와있는 이러한 다이어그램을 보자마자 이건 1초씩 당기면서 시뮬레이션을 돌려서 알아내야 되겠다고 풀이전략을 생각했다. 특정 만약..