728x90

프로그래머스 6

[Algorithm] 프로그래머스 레벨[0] 풀이 - (Javascript)(9)

■ 배열 회전시키기 주어진 direction, right와 left 두가지의 경우에 대해 나눈다 => if-else if 사용 입출력 예시를 보면 right의 경우엔 numbers[0],numbers[1],numbers[2] => numbers[2],numbers[1],numbers[0]으로 바뀌었고 left의 경우엔 numbers[0],numbers[1],numbers[2].. numbers[6] => numbers[1],numbers[2],numbers[3].. numbers[0] 으로 바뀌었다. right를 보면 앞으로 요소들이 추가 되는것을 알 수 있다. 그래서 pop메서드를 사용해서 요소를 추가해주고, unshift() 메서드를 이용해 앞으로 추가해준다. left를 보면 첫번째 요소들이 제거되고..

[Algorithm] 프로그래머스 레벨[0] 풀이 - (Javascript)(7)

■ 순서쌍의 개수 answer를 빈배열로 초기화 한다. 입출력 예시를 통해, n의 약수의 갯수가 result와 같다는것을 알 수 있다. 반복문 i를 1부터 n까지 증가시킬때, n이 i의 약수라면 그 값을 answer에 넣는다. answer의 길이를 return해 준다. ■ 가위 바위 보 이 문제의 조건을 정리해보면, result에는 rsp와 길이가 같은 문자열을 return => rsp.length 를 사용 입출력 예시를 통해 rsp="205" 일때, rsp[0] = "2",rsp[1] = "0",rsp[2] = "5" 인데, result에는 result[0] = "0", result[1] = "5",result[2] = "2" 이다. 같은 위치의 인덱스 배열에서 특정 문자열을 바꾸고 있다. mdn으로 ..

[Algorithm] 프로그래머스 레벨[0] 풀이 - (Javascript)(6)

■ 짝수의 합 answer값을 0으로 초기화한다. i를 1부터 n의 값까지 반복문을 돌린다. 반복문안에서 i가 짝수일때 => i%2==0 그 더한값들(i)을 answer로 반환해줘야한다. answer += i ■ 배열 자르기 이 문제는 입출력 예시를 보면 힌트를 알 수 있다. numbers[1]부터 numbers[3]까지 result로 값을 반환했다. slice함수를 써서 자르기르하면 마지막 index값은 반환하지 않는다. 그래서 num2+1로 식을 바꿔서 반환해준다. ■ 외계행성의 나이 이 문제는 정리하면 숫자인 age값을 문자열로 바꿔서 return해주는 것이다.(string, char관련함수) 먼저 result값을 빈문자열로 초기화해준다. age는 자연수라는 조건이 있기때문에 while문 조건 =>..

[Algorithm] 프로그래머스 레벨[0] 풀이 - (Javascript)(5)

■ 짝수 홀수 개수 짝수만 담은 배열과 홀수만 담은 배열을 따로 구한 뒤, 하나의 배열에 담아서 반환하기로 했다. num_list의 마지막 리스트값만큼 반복문을 돌려준다. 처음에 map을 이용해서 짝수만, 홀수만 배열로 담았다. 그런데 실행 오류가 발생했고, 다시 mdn을 켜서 사용할 수 있는 함수들을 찾아봤다. 바로 filter함수! map을 사용할 수 없는 이유는 map은 새로운 배열을 반환하기 때문에 결과적으로 배열의 길이가 num_list와 같아진다. 그래서 짝수를 의미하는 num % 2 == 0, 홀수를 의미하는 num % 2 == 1를 하나의 배열에 담아 반환해준다. ■ 문자열 반복 출력하기 이 문제는 대소문자를 구분해서 반복되는 문자열을 return하는 문제이다. 우선 결과값 result를 ..

[Algorithm] 프로그래머스 레벨[0] 풀이 - (Javascript)(3)

■ 피자 나눠 먹기(1) 이 문제를 처음 봤을때, 과거 수학 익힘책에서 본 듯한 느낌을 받았다. 조건은 모든 사람이 한조각씩 먹어야하고, 한판을 7등분을 한다. => 인원(n) /7을 하면 한사람당 최소 한조각을 먹는다. 나눴을때 정수로 떨어져야하고 그래서 Math함수를 써야하는데,floor를 쓸지 ceil를 쓸지 고민하게 된다. 하나의 입출력 예를 들어보면, ceil을 사용해야 1.xx일때, 1이 될 수 있다. ■ 피자 나눠 먹기(2) 먼저 매개변수로 주어진 사람수 n에대해 두가지 경우로 나눌 수 있다. 사람이 한명일때와 n명일때, 한명일때는 무조건 1을 return하고, n명일 경우에 대해 또다시 경우의 수를 나눌 수 있다. 우선 피자 한판을 정의하기 위해, 피자 한 조각을 1로 초기화해준다. 그렇게..

[Algorithm] 프로그래머스 레벨[0] 풀이 - (Javascript)(1)

■ 숫자 비교하기 ● 삼항연산자를 이용해 num1 과 num2가 같다면 1 아니면 -1 을 변수 answer에 넣어준다. 그리고 그 값을 return해 주었다. ■ 몫 구하기 ● 나눗셈 이용 ■ 두 수의 차 ■ 두 수의 곱 ■ 나머지 구하기 ● 몫이 아닌 나머지를 구할때는 '%' 연산자를 이용한다. ■ 나이 출력 ● 기준년도 2022년에서 현재나이 40살을 빼주고 우리나라는 태어나자마자 1살이기때문에 +1을 해준다.

728x90