LV0 28

[프로그래머스, LV.0] 수열과 구간 쿼리 1

목차 #1 수열과 구간 쿼리 1 문제 설명 정수 배열 arr와 2차원 정수 배열 queries이 주어집니다. queries의 원소는 각각 하나의 query를 나타내며, [s, e] 꼴입니다. 각 query마다 순서대로 s ≤ i ≤ e인 모든 i에 대해 arr [i]에 1을 더합니다. 위 규칙에 따라 queries를 처리한 이후의 arr를 return 하는 solution 함수를 완성해 주세요. 제한사항 1 ≤ arr의 길이 ≤ 1,000 0 ≤ arr의 원소 ≤ 1,000,000 1 ≤ queries의 길이 ≤ 1,000 0 ≤ s ≤ e

[프로그래머스, LV.0] 할 일 목록

목차 #1 할 일 목록 문제 설명 오늘 해야 할 일이 담긴 문자열 배열 todo_list와 각각의 일을 지금 마쳤는지를 나타내는 boolean 배열 finished가 매개변수로 주어질 때, todo_list에서 아직 마치지 못한 일들을 순서대로 담은 문자열 배열을 return 하는 solution 함수를 작성해 주세요. 제한사항 1 ≤ todo_list의 길이 1 ≤ 100 2 ≤ todo_list의 원소의 길이 ≤ 20 todo_list의 원소는 영소문자로만 이루어져 있습니다. todo_list의 원소는 모두 서로 다릅니다. finished [i]는 true 또는 false이고 true는 todo_list[i]를 마쳤음을, false는 아직 마치지 못했음을 나타냅니다. 아직 마치지 못한 일이 적어도 하..

[프로그래머스, LV.0] 5명씩

목차 #1 5명씩 문제 설명 최대 5명씩 탑승가능한 놀이기구를 타기 위해 줄을 서있는 사람들의 이름이 담긴 문자열 리스트 names가 주어질 때, 앞에서부터 5명씩 묶은 그룹의 가장 앞에 서있는 사람들의 이름을 담은 리스트를 return 하도록 solution 함수를 완성해 주세요. 마지막 그룹이 5명이 되지 않더라도 가장 앞에 있는 사람의 이름을 포함합니다. 제한사항 5 ≤ names의 길이 ≤ 30 1 ≤ names의 원소의 길이 ≤ 10 names의 원소는 영어 알파벳 소문자로만 이루어져 있습니다. 입출력 예 names result {"nami", "ahri", "jayce", "garen", "ivern", "vex", "jinx"} {"nami", "vex"} #2 알고리즘 및 코드 import..

[프로그래머스, LV.0] 홀수 vs 짝수

목차 #1 홀수 vs 짝수 문제 설명 정수 리스트 num_list가 주어집니다. 가장 첫 번째 원소를 1번 원소라고 할 때, 홀수 번째 원소들의 합과 짝수 번째 원소들의 합 중 큰 값을 return 하도록 solution 함수를 완성해 주세요. 두 값이 같을 경우 그 값을 return 합니다. 제한사항 5 ≤ num_list의 길이 ≤ 50 -9 ≤ num_list의 원소 ≤ 9 입출력 예 num_list result {4, 2, 6, 1, 7, 6} 17 {-1, 2, 5, 6, 3} 8 #2 알고리즘 및 코드 class Solution { public int solution(int[] num_list) { int even = 0, odd = 0; // even: 짝, odd: 홀 for(int i =..

[프로그래머스, LV.0] 왼쪽 오른쪽

목차 #1 왼쪽 오른쪽 문제 설명 문자열 리스트 str_list에는 "u", "d", "l", "r" 네 개의 문자열이 여러 개 저장되어 있습니다. str_list에서 "l"과 "r" 중 먼저 나오는 문자열이 "l"이라면 해당 문자열을 기준으로 왼쪽에 있는 문자열들을 순서대로 담은 리스트를, 먼저 나오는 문자열이 "r"이라면 해당 문자열을 기준으로 오른쪽에 있는 문자열들을 순서대로 담은 리스트를 return 하도록 solution 함수를 완성해 주세요. "l"이나 "r"이 없다면 빈 리스트를 return 합니다. 제한사항 1 ≤ str_list의 길이 ≤ 20 str_list는 "u", "d", "l", "r" 네 개의 문자열로 이루어져 있습니다. 입출력 예 str_list result ["u", "u"..

[프로그래머스, LV.0] n개 간격의 원소들

목차 #1 n개 간격의 원소들 문제 설명 정수 리스트 num_list와 정수 n이 주어질 때, num_list의 첫 번째 원소부터 마지막 원소까지 n개 간격으로 저장되어 있는 원소들을 차례로 담은 리스트를 return 하도록 solution 함수를 완성해 주세요. 제한사항 5 ≤ num_list의 길이 ≤ 20 1 ≤ num_list의 원소 ≤ 9 1 ≤ n ≤ 4 입출력 예 num_list n result {4, 2, 6, 1, 7, 6} 2 {4, 6, 7} {4, 2, 6, 1, 7, 6} 4 {4, 7} #2 알고리즘 및 코드 import java.util.ArrayList; import java.util.List; class Solution { public int[] solution(int[] ..

[프로그래머스, LV.0] 순서 바꾸기

목차 #1 순서 바꾸기 문제 설명 정수 리스트 num_list와 정수 n이 주어질 때, num_list를 n 번째 원소 이후의 원소들과 n 번째까지의 원소들로 나눠 n 번째 원소 이후의 원소들을 n 번째까지의 원소들 앞에 붙인 리스트를 return 하도록 solution 함수를 완성해 주세요. 제한사항 2 ≤ num_list의 길이 ≤ 30 1 ≤ num_list의 원소 ≤ 9 1 ≤ n ≤ num_list의 길이 입출력 예 num_list n result {2, 1, 6} 1 {1, 6, 2} {5, 2, 1, 7, 5} 3 {7, 5, 5, 2, 1} #2 알고리즘 및 코드 import java.util.ArrayList; import java.util.List; class Solution { pub..

[프로그래머스, LV.0] 2의 영역

목차 #1 2의 영역 문제 설명 정수 배열 arr가 주어집니다. 배열 안의 2가 모두 포함된 가장 작은 연속된 부분 배열을 return 하는 solution 함수를 완성해 주세요. 단, arr에 2가 없는 경우 [-1]을 return 합니다. 제한사항 1 ≤ arr의 길이 ≤ 100,000 1 ≤ arr의 원소 ≤ 10 입출력 예 arr result {1, 2, 1, 4, 5, 2, 9} {2, 1, 4, 5, 2} {1, 2, 1} {2} {1, 1, 1} {-1} {1, 2, 1, 2, 1, 10, 2, 1} {2, 1, 2, 1, 10, 2} #2 알고리즘 및 코드 import java.util.ArrayList; import java.util.List; class Solution { public ..

[프로그래머스, LV.0] 배열 만들기 3

목차 #1 배열 만들기 3 문제 설명 정수 배열 arr와 2개의 구간이 담긴 배열 intervals가 주어집니다. intervals는 항상 [[a1, b1], [a2, b2]]의 꼴로 주어지며 각 구간은 닫힌 구간입니다. 닫힌 구간은 양 끝값과 그 사이의 값을 모두 포함하는 구간을 의미합니다. 이때 배열 arr의 첫 번째 구간에 해당하는 배열과 두 번째 구간에 해당하는 배열을 앞뒤로 붙여 새로운 배열을 만들어 return 하는 solution 함수를 완성해 주세요. 제한사항 1 ≤ arr의 길이 ≤ 100,000 1 ≤ arr의 원소 < 100 1 ≤ a1 ≤ b1

[프로그래머스, LV.0] 첫 번째로 나오는 음수

목차 #1 첫 번째로 나오는 음수 문제 설명 정수 리스트 num_list가 주어질 때, 첫 번째로 나오는 음수의 인덱스를 return하도록 solution 함수를 완성해주세요. 음수가 없다면 -1을 return합니다. 제한 사항 5 ≤ num_list의 길이 ≤ 100 -10 ≤ num_list의 원소 ≤ 100 입출력 예 num_list result [12, 4, 15, 46, 38, -2, 15] 5 [13, 22, 53, 24, 15, 6] -1 #2 알고리즘 및 코드 class Solution { public int solution(int[] num_list) { for(int i = 0; i < num_list.length; i++){ if(num_list[i] < 0) return i; } r..