level2
-
프로그래머스 H-Index 자바(java) 풀이 Level 2 정렬 H-Index 문제 정리 어떤 과학자의 H-Index: 발표한 논문 n편 중, h번 이상 인용된 논문이 h편 이상이고 나머지 논문이 h번 이하 인용되었다면 h의 최댓값 논문별 인용 횟수는 0회 이상 10,000회 이하이다. 문제 설명 h-index의 정의를 잘 이해하셔야 합니다. 예를들어 {7.8.9.9}가 주어졌다고 합시다. 그러면 여기서 h-index는 몇이 될까요??? 답이 없다고 생각한다면 잘 못 이해하셨습니다. 답은 4 입니다. h값이 인용횟수 안에 있으라는 법은 없습니다. 4번 이상 인용된게 4개 있고 나머지 논문이 4번 이하(0번) 인용되었으므로 최대 h는 4가 맞습니다 문제 풀이 문제 그대로 풀이 하면됩니다. 쉽게 풀이하기..
[정렬] 프로그래머스 level2 H-Index 자바 풀이프로그래머스 H-Index 자바(java) 풀이 Level 2 정렬 H-Index 문제 정리 어떤 과학자의 H-Index: 발표한 논문 n편 중, h번 이상 인용된 논문이 h편 이상이고 나머지 논문이 h번 이하 인용되었다면 h의 최댓값 논문별 인용 횟수는 0회 이상 10,000회 이하이다. 문제 설명 h-index의 정의를 잘 이해하셔야 합니다. 예를들어 {7.8.9.9}가 주어졌다고 합시다. 그러면 여기서 h-index는 몇이 될까요??? 답이 없다고 생각한다면 잘 못 이해하셨습니다. 답은 4 입니다. h값이 인용횟수 안에 있으라는 법은 없습니다. 4번 이상 인용된게 4개 있고 나머지 논문이 4번 이하(0번) 인용되었으므로 최대 h는 4가 맞습니다 문제 풀이 문제 그대로 풀이 하면됩니다. 쉽게 풀이하기..
2020.05.09 -
프로그래머스 타겟넘버 자바(java) 풀이 Level 2 BFS/DFS 타겟넘버 문제 정리 n개의 음이아닌 정수가 있다. 이 수를 적절히 더하거나 빼서 타겟 넘버를 만들려고 한다. 숫자를 적절히 더하고 빼서 타겟 넘버를 만드는 방법의 수를 return 하여라 주어지는 숫자의 개수는 2개 이상 20개 이하입니다. 각 숫자는 1이상 50이하의 자연수 이다. 문제 풀이 이 문제가 프로그래머스에는 BFS/DFS로 분류되어 있지만 저는 조합을 이용하여 풀었습니다. 조합을 이용하여 모든 경우의 수를 따져주었습니다. 1,2,...len개 선택하는 경우 모두 따져주었습니다. len(numbers의 개수) 개중 i개 선택하기 예를들어 1개를 선택한다면 1개만 visited가 true로 될 것입니다. 그러면 하나만 더하기..
[조합] 프로그래머스 level2 타겟넘버 자바 풀이프로그래머스 타겟넘버 자바(java) 풀이 Level 2 BFS/DFS 타겟넘버 문제 정리 n개의 음이아닌 정수가 있다. 이 수를 적절히 더하거나 빼서 타겟 넘버를 만들려고 한다. 숫자를 적절히 더하고 빼서 타겟 넘버를 만드는 방법의 수를 return 하여라 주어지는 숫자의 개수는 2개 이상 20개 이하입니다. 각 숫자는 1이상 50이하의 자연수 이다. 문제 풀이 이 문제가 프로그래머스에는 BFS/DFS로 분류되어 있지만 저는 조합을 이용하여 풀었습니다. 조합을 이용하여 모든 경우의 수를 따져주었습니다. 1,2,...len개 선택하는 경우 모두 따져주었습니다. len(numbers의 개수) 개중 i개 선택하기 예를들어 1개를 선택한다면 1개만 visited가 true로 될 것입니다. 그러면 하나만 더하기..
2020.05.08 -
프로그래머스 카펫 자바(java) 풀이 Level 2 완전탐색 카펫 문제 정리 카펫은 중앙에는 빨간색, 테두리 1줄은 갈색으로 칠해져 있었다. 카펫의 갈색격자 수, 빨간색 격자 수는 알고 있다. 카펫의 가로, 세로 크기를 순서대로 담아 return 하여라. 카펫의 가로 길이 >= 세로길이 문제 풀이(Solution) level2의 문제이지만 level1이 더 맞지 않나 생각합니다. 카펫의 갈색의 개수와 빨간색의 개수를 더하여 카펫에서 총 격자의 개수를 구합니다. 총 격자 개수의 약수의 쌍을 구합니다. brown=10, red=2 인 경우 총 격자의 개수는 12입니다. 이때 카펫은 다음과 같이 가능합니다(1,12), (2,6), (3,4), (4,3), (6,2), (12,1)하지만 행의 길이가 3보다 작..
[완전탐색, 약수] 프로그래머스 level2 카펫 자바 풀이프로그래머스 카펫 자바(java) 풀이 Level 2 완전탐색 카펫 문제 정리 카펫은 중앙에는 빨간색, 테두리 1줄은 갈색으로 칠해져 있었다. 카펫의 갈색격자 수, 빨간색 격자 수는 알고 있다. 카펫의 가로, 세로 크기를 순서대로 담아 return 하여라. 카펫의 가로 길이 >= 세로길이 문제 풀이(Solution) level2의 문제이지만 level1이 더 맞지 않나 생각합니다. 카펫의 갈색의 개수와 빨간색의 개수를 더하여 카펫에서 총 격자의 개수를 구합니다. 총 격자 개수의 약수의 쌍을 구합니다. brown=10, red=2 인 경우 총 격자의 개수는 12입니다. 이때 카펫은 다음과 같이 가능합니다(1,12), (2,6), (3,4), (4,3), (6,2), (12,1)하지만 행의 길이가 3보다 작..
2020.05.08 -
프로그래머스 조이스틱 자바(java) 풀이 Level 2 조이스틱 먼저 이야기하자면 이 문제는 그리디로만 풀어야만 답으로 인정해줍니다. 물론 완전탐색으로 풀어도 TC 모두 정답이 나옵니다. 하지만 문제를 제대로 풀기 위해서는 완전탐색으로 풀어야 합니다. 그리디는 아무데서나 쓰는 것이 아니라했는데 여기서 확실히 깨닫습니다... 예시는 아래에서 이야기하겠습니다!! 문제 정리 기본 문자열은 길이가 몇이든 A로만 이루어져 있다. 위, 아래로 조이스틱을 움직이면 알파벳을 변경할 수 있다. 위로 이동하면 A->Z로 이동가능하다. 아래로 이동하면 Z->A로 이동가능하다. 만약 A에서 아래로 이동한다면 'Z'가 된다. 왼쪽, 오른쪽 키는 커서를 움직여 다른 문자위치로 움직일 수 있다. 이때 주어진 문자열..
[완전탐색] Level2 프로그래머스 조이스틱 진짜 정답 풀이(그리디는 안됨)프로그래머스 조이스틱 자바(java) 풀이 Level 2 조이스틱 먼저 이야기하자면 이 문제는 그리디로만 풀어야만 답으로 인정해줍니다. 물론 완전탐색으로 풀어도 TC 모두 정답이 나옵니다. 하지만 문제를 제대로 풀기 위해서는 완전탐색으로 풀어야 합니다. 그리디는 아무데서나 쓰는 것이 아니라했는데 여기서 확실히 깨닫습니다... 예시는 아래에서 이야기하겠습니다!! 문제 정리 기본 문자열은 길이가 몇이든 A로만 이루어져 있다. 위, 아래로 조이스틱을 움직이면 알파벳을 변경할 수 있다. 위로 이동하면 A->Z로 이동가능하다. 아래로 이동하면 Z->A로 이동가능하다. 만약 A에서 아래로 이동한다면 'Z'가 된다. 왼쪽, 오른쪽 키는 커서를 움직여 다른 문자위치로 움직일 수 있다. 이때 주어진 문자열..
2020.04.19