프로그래머스 day6, Java - 수열과 구간 쿼리2
3보다 2가 더 어렵다 기초 문제가 올라가있는 순서대로 난이도가 조금씩 올라가는 것 같다 문제 설명 정수 배열 arr와 2차원 정수 배열 queries이 주어집니다. queries의 원소는 각각 하나의 query를 나타내며, [s, e, k] 꼴입니다. 각 query마다 순서대로 s ≤ i ≤ e인 모든 i에 대해 k보다 크면서 가장 작은 arr[i]를 찾습니다. 각 쿼리의 순서에 맞게 답을 저장한 배열을 반환하는 solution 함수를 완성해 주세요. 단, 특정 쿼리의 답이 존재하지 않으면 -1을 저장합니다. 입출력 예 arr queries result [0,1,2,4,3] [0,4,2],[0,3,2],[0,2,2] [3,4,-1] 입출력 예 첫 번째 쿼리의 범위에는 0, 1, 2, 4, 3이 있으며 ..
2023. 11. 15.
프로그래머스 day6, Java - 수열과 구간 쿼리3
수열과 구간쿼리 시리즈 기초문제 맞나요...? 어렵다 문제 설명 정수 배열 arr와 2차원 정수 배열 queries이 주어집니다. queries의 원소는 각각 하나의 query를 나타내며, [i, j] 꼴입니다. 각 query마다 순서대로 arr[i]의 값과 arr[j]의 값을 서로 바꿉니다. 위 규칙에 따라 queries를 처리한 이후의 arr를 return 하는 solution 함수를 완성해 주세요. 입출력 예 arr queries result [0,1,2,3,4] [0,3],[1,2],[1,3] [3,4,1,0,2] 입출력 예 각 쿼리에 따라 arr가 다음과 같이 변합니다. arr [0, 1, 2, 3, 4] [3, 1, 2, 0, 4] [3, 2, 1, 0, 4] [3, 4, 1, 0, 2] 따라..
2023. 11. 15.
프로그래머스 day6 - 마지막 두 원소
문제 설명 정수 리스트 num_list가 주어질 때, 마지막 원소가 그전 원소보다 크면 마지막 원소에서 그전 원소를 뺀 값을 마지막 원소가 그전 원소보다 크지 않다면 마지막 원소를 두 배한 값을 추가하여 return하도록 solution 함수를 완성해주세요. 입출력 예 numLog result [2,1,6] [2,1,6,5] [5,2,1,7,5] [5,2,1,7,5,10] 입출력 예 #1 마지막 원소인 6이 그전 원소인 1보다 크기 때문에 6 - 1인 5를 추가해 return합니다. 입출력 예 #2 마지막 원소인 5가 그전 원소인 7보다 크지 않기 때문에 5의 두 배인 10을 추가해 return합니다. 접근을 잘못해서 헤맸었는데 처음 뻘짓은 다음과 같았다 class Solution { public int..
2023. 11. 11.
프로그래머스 day6 - 수 조작하기2
문제 설명 정수 배열 numLog가 주어집니다. 처음에 numLog[0]에서 부터 시작해 "w", "a", "s", "d"로 이루어진 문자열을 입력으로 받아 순서대로 다음과 같은 조작을 했다고 합시다. "w" : 수에 1을 더한다. "s" : 수에 1을 뺀다. "d" : 수에 10을 더한다. "a" : 수에 10을 뺀다. 그리고 매번 조작을 할 때마다 결괏값을 기록한 정수 배열이 numLog입니다. 즉, numLog[i]는 numLog[0]로부터 총 i번의 조작을 가한 결과가 저장되어 있습니다. 주어진 정수 배열 numLog에 대해 조작을 위해 입력받은 문자열을 return 하는 solution 함수를 완성해 주세요. 입출력 예 numLog result [0, 1, 0, 10, 0, 1, 0, 10, 0..
2023. 11. 10.