일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 백준
- 4주 프로젝트
- 렛츠기릿 자바스크립트
- 타입스크립트 올인원
- til
- 코어 자바스크립트
- 리액트
- 정재남
- js
- 제로초
- 손에 익히며 배우는 네트워크 첫걸음
- SQL 고득점 Kit
- 2주 프로젝트
- 회고
- 타임어택
- LeetCode
- javascript
- 리트코드
- 토익
- 리덕스
- programmers
- 프로그래머스
- 알고리즘
- Async
- 타입스크립트
- 파이썬
- python
- 자바스크립트
- codestates
- 코드스테이츠
- Today
- Total
목록프로그래머스 (158)
Jerry
function solution(dots) { let arr = []; for (let y = 0; y < dots.length; y++) { for (let x = y + 1; x < dots.length; x++) { const inclination = (dots[y][1] - dots[x][1]) / (dots[y][0] - dots[x][0]); if (arr.includes(inclination)) return 1; arr.push(inclination); } } return 0; } 어렵게 생각했다. 각 경우의 수 마다의 기울기를 배열에 넣어 겹치는 기울기가 있는지 없는지 여부를 파악하여 답을 구하는 방법, 더 간단한 방법을 알게 되었다.
function solution(n) { // 3의 배수, 숫자 3 사용하지 않음 let arr = new Array(2).fill(0); for (let i = 0; i 100) break; } return arr[n - 1][1]; } // 다른 풀이 function solution(n) { let arr = []; let num = 0; while (arr.length !=..
function solution(board) { let arr = []; board.forEach((e, i) => e.forEach((t, idx) => { if (t === 1) arr.push([i, idx]); })) arr.forEach((e) => { const y = e[0]; const x = e[1]; try { board[y - 1].splice(x, 1, 1); } catch {} try { board[y - 1].splice(x + 1, 1, 1); } catch {} try { board[y].splice(x + 1, 1, 1); } catch {} try { board[y + 1][x + 1] = 1; } catch {} try { board[y + 1][x] = 1; } cat..
function solution(spell, dic) { const isExist = []; dic.forEach((e) => { let cnt = 0; spell.forEach((i) => { if (e.includes(i)) cnt++; }); if (cnt === spell.length) isExist.push(e); }); return isExist.length === 0 ? 2 : 1; }
function solution(my_string) { let arr = [...my_string]; let total = []; let t = ''; for (let i = 0; i a + Number(c), 0); } // 다른 풀이 function solution(my_string) { return my_string.split(/\D+/).reduce((acc, cur) => acc + Number(cur), 0); } //..
function solution(polynomial) { polynomial = polynomial.split(' ').filter((e) => e !== '+'); let xNum = 0; let num = 0; polynomial.forEach((e) => { if (e.includes('x')) { const x = e.split('x'); if (x[0] === '') xNum++; if (x[0] !== '') xNum += Number(x[0]); } if (!e.includes('x')) num += Number(e); }) if (xNum !== 0 && num !== 0) return xNum === 1 ? `x + ${num}` : `${xNum}x + ${num}`; if (xNum ..
function solution(keyinput, board) { let answer = [0, 0]; let max = [Math.floor(board[0] / 2), Math.floor(board[1] / 2)]; keyinput.forEach((e) => { switch(e) { case 'left' : if (!(answer[0] === -max[0])) answer[0]--; break; case 'right' : if (!(answer[0] === max[0])) answer[0]++; break; case 'up' : if (!(answer[1] === max[1])) answer[1]++; break; case 'down' : if (!(answer[1] === -max[1])) answe..
function solution(dots) { let rowArr = dots.map((el) => el[0]); let columnArr = dots.map((el) => el[1]); let rMax = Math.max(...rowArr); let rMin = Math.min(...rowArr); let width = rMax - rMin; let cMax = Math.max(...columnArr); let cMin = Math.min(...columnArr); let height = cMax - cMin; let area = width * height; return area < 0 ? area *= -1 : area *= 1; }