일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- useDispatch
- react-redux
- createSlice
- 항해플러스
- SW
- redux
- sw expert academy
- 리액트
- 이코테
- react
- java
- Python
- C++
- react-router
- 프로그래머스
- 코딩테스트합격자되기
- 매일메일
- programmers
- JavaScript
- Get
- 테코테코
- json-server
- axios
- redux-saga
- maeil-mail
- Algorithm
- 자바
- 알고리즘
- redux-toolkit
- 항해99
- Today
- Total
목록프로그래머스 (113)
Binary Journey
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/zQ0za/btrb6Twp1Vy/H1BbZOw1k1nyYTHIQ828bk/img.png)
출처: 프로그래머스 코딩 테스트 연습, https://programmers.co.kr/learn/challenges ** Javascript 1) 처음에 제출했던 풀이 function solution(n) { let answer = 0; for (let i = 1; i (n % (index + 1)) ? 0 : index + 1) .reduce((acc, curr) => acc += curr, 0); } function solution(n) { return new Array(n).fill(0) .reduce((acc, curr, index) => acc += (n % (index + 1)) ? 0 : index + 1, 0); } 하지만 for 문 돌리는 게 가장 빠르다. 풀이 중 추천 1등은 재귀의 신..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/p5npk/btrb6TJVt72/6y8QyPmUnZvVHCEywtRYRk/img.png)
출처: 프로그래머스 코딩 테스트 연습, https://programmers.co.kr/learn/challenges ** Javascript 1) 맨 처음 제출한 풀이는 이랬다. 프로그래머스 접한 지 얼마 안돼서 푼 문제여서 혼자 되게 뿌듯했던 기억이 있다 지금 보면 약간 흑역사지만 function solution(s) { var [ ...strings ] = s.split(" "); var answers = []; for (var string of strings) { var temp = ""; for (var i=0; i Array.from(word).reduce((acc, curr, index) => acc += (index % 2) ? curr.toLowerCase() : curr.toUpperCa..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/dSfEAz/btrb3mZKN4c/pCGOV1BxXYG2Qkr6vy65gk/img.png)
출처: 프로그래머스 코딩 테스트 연습, https://programmers.co.kr/learn/challenges ** Javascript 1) 맨 처음 제출한 코드는 이렇다. function solution(n) { let answer = 0; const string = `${n}`; for (var i=0; i acc += parseInt(curr), 0); } 3) 숫자 n 을 string 으로 만들지 않는 풀이는 다음과 같다. function solution(n) { let answer = 0; while(n > 0) { answer += n % 10; n = Math.floor(n / 10); } return answer; } ** Java 1) 숫자로만 자릿수를 구해서 합산하는 방법 impo..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/cyGuDB/btrb7bDwivP/3n4mOfS5Yf9UCGycK0SYbK/img.png)
출처: 프로그래머스 코딩 테스트 연습, https://programmers.co.kr/learn/challenges ** Javascript 입력 값으로는 본인이 매긴 점수들이 들어오는데 본인이 받은 점수로 평균을 내야 하기 때문에 우선 row 와 column의 위치를 바꿔야 했다. 바뀐 식에서 인덱스가 (i, i)이고 유일한 max 혹은 min 값일 경우 filter가 되어야 했는데 다른 풀이를 보면 splice를 하면 됐지만 나는 그렇게 까지는 생각을 못하고 0으로 바꿔줬다. 그리고 0으로 바뀐 값들을 제외시켰다. function solution(_scores) { const scores = _scores .map((row, i) => row.map((col, j) => _scores[j][i])) ..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/l4UdO/btrbVZ97xcG/1K3y41V93s3IeogvX9Dma0/img.png)
출처: 프로그래머스 코딩 테스트 연습, https://programmers.co.kr/learn/challenges ** Javascript 풀릴 줄 몰랐는데 풀렸다 ㅋㅋㅋㅋ 근데 시간이 오래 걸렸다 내가 H-Index의 개념을 모르고 문제 설명대로 풀어서 그런 것 같다. 일단 나의 풀이는 이렇다. function solution(citations) { return citations.reduce((acc, curr) => { let h = citations.filter((논문) => 논문 >= curr).length; let isHIndex = curr >= h && citations .filter((논문) => 논문 논문
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/cWMPM3/btrbIIhdPdV/5Z6boSSS6PfVcEHbOFKx51/img.png)
출처: 프로그래머스 코딩 테스트 연습, https://programmers.co.kr/learn/challenges MySQL 문제들은 아쉽게도 점수가 없어 순위에 영향을 주지 않는다. SELECT ID, NAME, HOST_ID FROM PLACES WHERE HOST_ID IN ( SELECT HOST_ID FROM PLACES GROUP BY HOST_ID HAVING COUNT(*) > 1 ) ORDER BY ID ASC; 참고: https://thispointer.com/mysql-select-where-count-is-greater-than-one-solved/ MySQL Select where Count is greater than one [Solved] – thispointer.com In..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bqYQJc/btrbABQxzpR/vqine2yk5Vqoi4chd9v01K/img.png)
출처: 프로그래머스 코딩 테스트 연습, https://programmers.co.kr/learn/challenges ** Javascript function solution(s) { const c = s.split(" ").map((n) => +n); return `${Math.min.apply(null, c)} ${Math.max.apply(null, c)}`; } 다른 풀이를 보니 숫자로 변환할 필요가 없었다. 다음은 추천을 가장 많이 받은 풀이다. function solution(s) { const arr = s.split(' '); return Math.min(...arr)+' '+Math.max(...arr); } + 풀이 추가 (2021.12.06) function solution(s) { c..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bxs6Ga/btrbyHQZBDa/HjLhz5jHiF7kd4fRTwpUsk/img.png)
출처: 프로그래머스 코딩 테스트 연습, https://programmers.co.kr/learn/challenges ** Javascript function solution(A, B){ const a = A.sort((x, y) => x - y); const b = B.sort((x, y) => y - x); return a.reduce((acc, curr, index) => acc += curr * b[index], 0); } 다른 풀이들을 보니까 모두 같은 생각이었나 보다. 아래는 가장 많은 추천을 받은 풀이다. function solution(A,B){ A.sort((a, b) => a - b) B.sort((a, b) => b - a) return A.reduce((total, val, idx) ..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/Ringv/btrbCuwQHRB/AnHC9ctcVAn9TwRUxRUf5K/img.png)
출처: 프로그래머스 코딩 테스트 연습, https://programmers.co.kr/learn/challenges 갓택오버플로우 https://stackoverflow.com/questions/47047682/least-common-multiple-of-an-array-values-using-euclidean-algorithm Least Common Multiple of an array values using Euclidean Algorithm I want to calculate the least common multiple of an array of values, using Euclideans algorithm I am using this pseudocode implementation: found o..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/tzkP1/btrbLe0gYUT/QBwt9r3T40OtlveobuoJa0/img.png)
출처: 프로그래머스 코딩 테스트 연습, https://programmers.co.kr/learn/challenges ** Javascript function solution(record) { let answer = []; const users = {}; const records = record.map((r) => r.split(" ")); for (const [order, id, nickName] of records) { if (nickName) users[id] = nickName; } for (const [order, id, nickName] of records) { if (order.startsWith("E")) answer.push(`${users[id]}님이 들어왔습니다.`); if (order..