본문 바로가기

reduce5

[TIL] 2023.09.10 Programmers_숫자의 표현 숫자의 표현 문제 설명 Finn은 요즘 수학공부에 빠져 있습니다. 수학 공부를 하던 Finn은 자연수 n을 연속한 자연수들로 표현하는 방법이 여러 개라는 사실을 알게 되었습니다. 예를 들어 15는 다음과 같이 4가지로 표현할 수 있습니다. 1 + 2 + 3 + 4 + 5 = 15 4 + 5 + 6 = 15 7 + 8 = 15 15 = 15 자연수 n이 매개변수로 주어질 때, 연속된 자연수들로 n을 표현하는 방법의 수를 return하는 solution를 완성해 주세요. 나의 1차 풀이 function solution(n) { const arr = Array(n).fill(0).map((_, idx) => idx + 1); let count = 0; for (let i = 0; i < n; i++) { ar.. 2023. 9. 10.
[TIL] 2023.05.12 Programmers_코드 처리하기 코드 처리하기 문제 설명 문자열 code가 주어집니다. code를 앞에서부터 읽으면서 만약 문자가 "1"이면 mode를 바꿉니다. mode에 따라 code를 읽어가면서 문자열 ret을 만들어냅니다. mode는 0과 1이 있으며, idx를 0부터code의 길이 - 1까지 1씩 키워나가면서 code[idx]의 값에 따라 다음과 같이 행동합니다. mode가 0일 때 code[idx]가 "1"이 아니면 idx가 짝수일 때만 ret의 code[idx]를 추가합니다. code[idx]가 "1"이면 mode를 0에서 1로 바꿉니다. mode가 1일 때 code[idx]가 "1"이 아니면 idx가 홀수일 때만 ret의 맨 뒤에 code[idx]를 추가합니다. code[idx]가 "1"이면 mode를 1에서 0으로 바꿉.. 2023. 5. 13.
[TIL] 2023.04.10 Programmers_다항식 더하기 Today I Learned Programmers 문제 풀기 Programmers 문제 풀기 다항식 더하기 나의 풀이 function solution(polynomial) { const array = polynomial.split(" ").filter((v) => v !== "+"); const answer = array.reduce((acc, cur) => { if ( cur.includes("x") ) { cur.length === 1 ? acc[0] += 1 : acc[0] += parseInt(cur) } else if ( !isNaN(parseInt(cur)) ) { acc[1] += parseInt(cur) } return acc }, [0,0]) return (answer[0] ? answe.. 2023. 4. 11.
[TIL] 2023.03.31 기술면접 스터디, Programmers 문제 풀기 Today I Learned Programmers 문제 풀기 기술면접 스터디 기술면접 답변 준비 Programmers 문제 풀기 가까운 수 나의 풀이 function solution(array, n) { let array2 = array.sort((a,b) => a-b).map((num) => Math.abs(n-num)) let index = array2.indexOf(Math.min(...array2)) return array[index] } 처음에는 sort를 사용하지 않고 그냥 map만 돌려서 n-num을 한 절댓값으로 배열을 가공한 후에 해당 배열에서 최솟값을 가진 index를 찾아서 문제를 풀었다. 그런데 이렇게 했을 때 "가장 가까운 수가 여러 개일 경우 더 작은 수를 return합니다."라.. 2023. 3. 31.
[TIL] 내일배움캠프 React 과정 2022.12.20 Today I Learned 코딩애플 axios 관련 강의 수강 TO DO LIST Axios로 구현하기 코딩애플 AXIOS AJAX 요청하는 방법 import axios from 'axios' function App(){ return ( { axios.get('https://codingapple1.github.io/shop/data2.json').then((결과)=>{ console.log(결과.data) }) .catch(()=>{ console.log('실패함') }) }}>버튼 ) } 1. axios를 쓰려면 상단에 import하고 2. axios.get(URL) 이러면 그 URL로 GET 요청이 된다. 3. 데이터 가져온 결과는 결과.data 안에 들어있다. 그래서 위의 버튼을 누르면 서버에서 .. 2022. 12. 20.