📌 문제 머쓱이네 옷가게는 10만 원 이상 사면 5%, 30만 원 이상 사면 10%, 50만 원 이상 사면 20%를 할인해줍니다. 구매한 옷의 가격 price가 주어질 때, 지불해야 할 금액을 return 하도록 solution 함수를 완성해보세요. 10 ≤ price ≤ 1,000,000 소수점 이하를 버린 정수를 return합니다. 📌 풀이 예시는 잘 나오는데 자꾸 오류가 떠서 뭔가 했더니 놓친 부분이 있었다. 10만원 이상 구매할 경우부터 할인률이 적용되는데 10만원 미만인 경우에는 얼마를 내야 할까? 이 부분을 고려해서 코드를 한 줄 추가해주니 통과됐다. 문제 자체가 어려운 것보다, 제한사항을 꼼꼼히 숙지하는 게 중요했던 문제였다. (소수점을 버린다든지) 📌 코드 function solution(..
📌 문제 📌 풀이 빈 배열을 선언하고 for문을 돌렸다. 짝수인 10의 경우에는 바로 아래 홀수 9로 들어가지만 홀수인 15의 경우에는 15까지 들어갔다. 그래서 Math.ceil로 올려준 수까지를 i의 범위로 잡았고 하나씩 더해주었다. 📌 코드 function solution(n) { var answer = []; for (var i = 1; i
📌 문제 📌 풀이 주어진 문자열에서 특정 문자를 제거해야 한다. 내가 좀 보편적으로 ㅋㅋㅋ 풀었다면 좀 더 명쾌한 답들이 많아서 같이 가져왔다. 풀이가 3개라서 각 코드별로 기록하겠다. 📌 코드 1. 내가 푼 풀이 function solution(my_string, letter) { var answer = my_string.split(''); var filtered = answer.filter((item => item !== letter)); filtered = filtered.join(''); return filtered } 문자열을 쪼개서 배열로 반환했다. 이후 그 배열에서 필터를 걸어 주어진 문자와 같지 않은 것들만 빼냈다. 이후 다시 join 해서 배열의 모든 요소를 연결해 하나의 문자열로 돌려주..
📌 마우스로 점을 찍자 캔버스 안에 마우스로 점을 찍을 때, 그 위치에 점이 찍히게 하고 싶다. 우선 캔버스 안에 점을 찍을 위치를 뽑아주어야 한다. 그 위치는 offsetX, offsetY이다. 점의 크기를 정해주고 사용할 색을 담은 어레이를 만들어주었다. 캔버스에 클릭이라는 이벤트가 일어날 때 cursor_move라는 함수가 작동하는데, 해당 함수는 이벤트가 발생한(클릭한) 위치의 offsetX, offsetY을 좌표로 사용한다. 참고로 매 좌표마다 패스를 새로 시작하게 설정해주어야 한다. 그렇지 않으면 점을 찍을 때마다 안 떨어지고 달라 붙는다. 점을 찍을 때마다 원이 찍힐 것이고, 그 원의 좌표는 아까 지정한 좌표 + 반지름 크기 10 + 원의 모양으로 arc를 정해준다. 컬러의 경우 이전에 배웠..
📌 풀이 정수가 들어 있는 배열 num_list가 매개변수로 주어질 때, 원소의 순서를 거꾸로 뒤집은 배열을 return하는 함수 만들기 간단하게 reverse 메소드를 사용했다. 해당 메소드를 사용할 때에는 새로운 변수를 지정해주어야 해서 reversed라는 변수를 지정했다. 📌 코드 function solution(num_list) { const reversed = num_list.reverse(); return reversed; }
📌 풀이 정수가 담긴 리스트 num_list가 주어질 때, 이 리스트의 원소 중 짝수와 홀수의 개수를 담은 배열을 return하는 함수 만들기 num_list를 다 돌아서 홀수면 odd에 1을 더하고 짝수면 even에 1을 더해 빈 배열에 두 값을 넣어 출력한다. 📌 코드 function solution(num_list) { var odd = 0; var even = 0; for (let i = 0; i < num_list.length; i += 1) { if (num_list[i] % 2 === 0) { even += 1; } else { odd += 1; } } var result = []; result.push(even); result.push(odd); return result }
📌 풀이 정수 배열 numbers가 매개변수로 주어질 때, numbers의 각 원소에 두 배한 원소를 가진 배열을 return하는 함수를 만들자. 빈 배열 answer를 선언한 후 for문을 돌려준다. numbers의 원소들을 다 한번씩 돌아야 해서 저렇게 코드를 짠다. answer에 numbers의 i번째 인덱스에 *2를 해준 값을 push해주면 된다. 📌 코드 function solution(numbers) { var answer = []; for (let i = 0; i < numbers.length; i += 1) { answer.push(numbers[i] * 2); } return answer; }