[프로그래머스] level2 132265 - 롤케이크 자르기 (Java)
무인도 여행 문제 설명 메리는 여름을 맞아 무인도로 여행을 가기 위해 지도를 보고 있습니다. 지도에는 바다와 무인도들에 대한 정보가 표시돼 있습니다. 지도는 1 x 1크기의 사각형들로 이루어진 직사각형 격자 형태이며, 격자의 각 칸에는 'X' 또는 1에서 9 사이의 자
https://school.programmers.co.kr/learn/courses/30/lessons/42891 접근 방법 1. 큐를 사용하며 음식을 넣고 빼기를 반복한다. 그런데 k가 2*10^13이라 O(k)에선 적합하지 않다. 2. 힙을 통해 시간이 적게 걸리
https://school.programmers.co.kr/learn/courses/30/lessons/60057 접근 방법 1부터 문자열의 반틈 길이만큼 잘라서 압축한다(완전 탐색) 길이 1일때의 압축 길이 길이 2일때의 압축 길이 ... 길이 s.length() / 2일때의 압축 길이 이를 모두 비교하면서 가장 작은 값을 구한다. s의 최대 길이가 ...
https://school.programmers.co.kr/learn/courses/30/lessons/181188 접근 방법 e를 기준으로 오름차순 정렬을 시키며, 앞에서부터 차례대로 검사한다. 미사일의 끝점을 기준으로 정렬시켜 해당 미사일이 커버가능한 시작점을 찾는 원리다. 위의 사진은 각 미사일을 끝점을 기준으로 오름차순 정렬시킨 그림과 유사하다....
https://school.programmers.co.kr/learn/courses/30/lessons/42746 접근 방법 1.규칙을 구한다. 근데 규칙 설정하기가 너무 어렵다. 포기 2. 조합을 통해 크기를 비교한다. s2+s1와 s1+s2를 비교하여 더 큰 수를 반환하도록 한다. 소스 코드
https://school.programmers.co.kr/learn/courses/30/lessons/42839 접근 방법 순열로 모든 경우의 수를 구한다. 순열 코드는 외워두자. 소스 코드
https://school.programmers.co.kr/learn/courses/30/lessons/12936 접근 방법 1. 순서있는 순열을 만든다. 그런데 20!는 너무 많다. 포기 2. 규칙을 찾는다. 앞자릿수가 무엇인지 하나씩 찾아가며 접근한다. n=4, k=10일 때 앞자릿수가 변하는 구간은 6개씩(3!) 지날때이다. k/6 -> 앞자릿수...
https://school.programmers.co.kr/learn/courses/30/lessons/43105?language=java3가지의 경우가 존재한다.왼쪽으로만 쭉 더해주는 것과오른쪽으로만 쭉 더해주는 것과그 사이에서 바로 윗줄에서의 둘 중 더 큰
https://school.programmers.co.kr/learn/courses/30/lessons/12952 접근 방법 Back-tracking으로 탐색한다. Back-tracking은 DFS(완전탐색)과 가지치기(분기)를 합친 알고리즘을 의미한다. 탐색하는 도중에, 조건에 맞지 않는 경우를 제외시키며 진행하는 원리다. N-Queens같은 경우는...