728x90

sliceArray() 2

kotlin 프로그래머스 lv2 할인 행사

해당 문제를 읽고 다음과 같은 알고리즘 사고를 해보았다. 1. want배열과 number배열을 맵으로 만들어 연결시키기 2. discount 배열에서 10일씩 이동하면서 want배열의 물건의 수량과 같은지 비교하는 작업하기 코드는 아래와 같이 작성하였다. 먼저 val wantMap = mutableMapOf() for (i in want.indices) { wantMap[want[i]] = number[i] } 다음 코드를 작성해서 wantMap을 만들어주었다. 그 후 배열을 10개단위로 잘라나가는 반복을 하기위해 예를들어 배열의 길이가109라면 10개를 잘라나간다고 가정했을때, 마지막 인덱스에서 9를 빼야 i는 100부터 시작해서 109에 마무리할수있어서 for (i in 0 until discount..

kotlin 프로그래머스 lv1 K번째수

문제 개요 주어진 배열에서 특정 부분을 잘라내고, 그 부분을 정렬한 뒤 특정 위치의 숫자를 찾아야하는 문제이다. 코드 설명 commands 배열의 각 요소는 [i j k] 형태로 주어진다. 이는 배열을 i 부터 j 까지 자르고, 그 부분을 정렬한 뒤 k번째 숫자를 찾으라는것이다. 코드에서는 각 명령을 반복하면서 해당하는 부분을 자르고, 정렬한 후 k 번째 숫자를 찾아 결과 배열에 추가할것이다. 최종적으로 결과 배열을 IntArray로 변환하여 반환한다. 코드는 아래와 같다. 배열을 슬라이싱 할때 slice()함수를 이용해서 에러가 떴었고 index에는 1을 빼야하는데 이러한 실수 때문에 다시 문제를 읽고 다시 풀고를 반복했다. sliceArray() 과 slice()의 차이에 대해 설명해보면 먼저 sli..

728x90