Filter4 [ 프로그래머스 ] JS - 두 개 뽑아서 더하기 문제 풀이1. 이중 for문을 돌려 요소의 처음 위치와 요소의 다음 위치들의 합을 모두 구해 answer 배열에 넣어준다.2. 중복된 수를 제거한다.3. 오름차순으로 정렬해 배열에 담는다.여기서 제일 중요한 작업은 중복된 수를 제거하는 것이라고 생각하고 이 과정에서 좀 애를 먹었기도 했다.중복된 수를 제거하는 방법에는 2가지가 있는데 이번에는 이 두 가지에 대해서 알아 보려고 한다!1. filter와 indexOf를 이용해 중복된 수 제거하기return answer.filter((x,idx)=> answer.indexOf(x) === idx) 122343- 위의 전체 테이블의 배열을 answer- 배열 안의 요소를 x- 배연 안 요소의 인덱스를 idx 라고 칭하겠다.여기서 filter를 통해 다음과 .. 2024. 8. 16. [ 프로그래머스 ] n개 간격의 원소들 JS 문제 풀이1) filter를 사용하여 num_list의 인덱스를 n으로 나눴을때 떨어지는 인덱스만 반환한다. 결과function solution(num_list, n) { var answer = []; return num_list.filter((_,idx)=>idx%n==0);}여기서는 인덱스만 가져오고자 요소의 변수는 _로 지정하였다. filter를 사용하면서 요소만 가져오는 것이 아니라 요소의 인덱스도 가져오는 법을 알고 싶었다. 그렇게 생각을 하다가 이번 문제를 풀면서 궁금증의 해답을 얻게 되었다. 바로 filter((_,idx)) => 이런 식으로 요소 다음에 인덱스 변수를 정해서 쓸 수 있다는 사실이었다. filter()element : 배열의 요소index : 요소의 인덱스.. 2024. 5. 28. [ 프로그래머스 ] 나누어 떨어지는 숫자 배열 문제 풀이1. filter()를 이용해 나누어 떨어지는 수만 걸러낸다.2. 삼항 연산자를 이용해 나누어 떨어지는 수가 없으면 -1을 배열로 반환하고 그렇지 않으면 filter로 걸러낸 수를 오름차순으로 정렬한 후 배열로 반환시키낟. 결과function solution(arr, divisor) { var answer = arr.filter(x => x % divisor === 0); return answer.length === 0 ? [-1] : answer.sort((a,b)=> a-b);} 비교처음에는 for문을 이용해서 문제를 해결했지만 두 번째 방법에는 filter()와 삼항 연산자를 사용하여서 풀었다.예전에는 자바를 사용했지만 현재, 자바스크립트를 사용하니 여기서 제공하는 메소드나 함.. 2024. 5. 6. [ 코틀린 ] 조건문, 배열 조건문 저번에 배운 when 조건문을 바탕으로 한 예제 문제보기 val score : Int = 125 when(score/100){ 5 -> println("최우수") 4,3 -> println("우수") 2 -> println("보통") else -> println("미달") } --------------------------변형-------------------------- val score : Int = 123 val grade =when(score) 결과값에 grade 변수에 넣어서 쓰겠다. when(score){ 500 -> println("최우수")// 값이 하나인 경우 498,499 -> println("우수") // 값이 여러개인 경우 in 300..497 -> println("우수")/.. 2024. 3. 25. 이전 1 다음