일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 알고리즘
- Data Structure
- Birthday Chocolate
- Ellectronics Shop
- Migratory Birds
- 자료구조
- #nodejs#노드js
- 프로그래머스
- algorithim
- Grading Students
- Between Two Sets
- Algorithm
- Sock Merchant
- Breaking the Records
- 노드
- git
- nodejs
- A Very Big Sum
- Time Conversion
- Divisible Sum Pairs
- Apple and Orange
- 자바스크립트
- hackerrank
- alogrithim
- Javascript
- 생활코딩
- javascirpt
- 짝수와 홀수
- Drawing Book
- #nodejs#express
- Today
- Total
목록algorithim (6)
ian의 개발일기장
1. 나의 풀이 2진법으로 직접 바꾸려다가 toString이라는 좋은 메소드가 있어서, 이것을 이용했다. 그리고 1의 개수가 같은것을 파악하기 위해서 정규표현식과 match 메소드를 이용했다. 2. 다른사람 풀이 로직은 거의 똑같다. 3. 결론 정규표현식과 toString에 대해서 조금더 알게되었다. 다만, toString이 아닌 직접, 10진법 숫자를 2진법으로 바꾸는 로직을 구현해봐야겠다. 4. 정리 10진법 => n진법으로 바꾸기 : Number.toString(바꿀진법숫자) 출처 - 프로그래머스, MDN공식문서
1. 나의 풀이 재귀를 이용해서 풀려고 했더니, 테스트케이스에서 시간초과로 막혔다. 그래서 while문을 이용해서, 피보나치수를 담는 result배열을 구했고, n이 2이상이면 n번째 피보나치수를 1234567로나눈 나머지를 리턴하라고 했으므로, result에 push를 해줄 때, 합을 나누어서 넣어주었다. 2. 다른사람 풀이 이풀이는 재귀를 이용한 풀이이다. 하지만 지금은 효율성체크에서 막힌다. for문을 이용한 간략한 풀이이다. 깔끔하다. 3. 결론 시간복잡도에 대해서 점점 더 생각을 가져봐야할것 같다. 4. 정리 고등학교 수업시간에 배웠었는데.. 코딩으로 풀려고 하니 다르다. 수열파트에서 배웠던부분인데.. 피보나치에 대한 설명은 위키로 남겨둔다. n번째 피보나치수 구하는 공식이 있는데 컴퓨터로는 소..
1. 나의 풀이 원래는 다른풀이를 썼는데.. 효율성테스트로 인해서, 에라토스테네스의 체를 이용해야한다는것을 알았다. 에라토스테네스의 체는 수학에서 소수를 찾는 방법중에 하나이다. 2. 다른사람 풀이 주석에 풀이가 잘 나와있다. 3. 결론 효율성에 대해서 잘 생각해보고, 코드를 짜야겠다. 4. 정리 에라토스테네스의 체 = 2부터 소수를 구하고자 하는 구간의 모든 수를 나열한다. 그림에서 회색 사각형으로 두른 수들이 여기에 해당한다.2는 소수이므로 오른쪽에 2를 쓴다. (빨간색)자기 자신을 제외한 2의 배수를 모두 지운다.남아있는 수 가운데 3은 소수이므로 오른쪽에 3을 쓴다. (초록색)자기 자신을 제외한 3의 배수를 모두 지운다.남아있는 수 가운데 5는 소수이므로 오른쪽에 5를 쓴다. (파란색)자기 자신을..
각자리수를 더하기 위해서, 먼저 입력된 숫자를 문자나 배열로 바꾸려고 생각했다. 1. 나의 풀이 reduce를 쓰려고, 숫자를 배열로 바꾸려고했다. toString으로 문자로 바꾼후, split 함수를 사용하여 배열로 바꾸었다. 2. 다른사람 풀이 reduce가 아닌 for문을 활용한 풀이이다. 3. 결론 Math 함수는 간편하다. 4. 정리 숫자를 문자로 바꾸는 방법 1. 숫자.toString()2. String(숫자) 문자를 숫자로 바꾸는 방법 1. Number(숫자로생긴문자)2. parseInt(숫자로생긴문자) 출처 - 프로그래머스
모든 원소를 다 더해서, 원소의 개수로 나누려고 생각했다. 1. 나의 풀이 reduce 함수를 이용해서, 배열의 모든원소의 합을 구하고, 원소의 개수를 배열의 길이로 파악했다. 2. 다른사람 풀이 ㄹ for 문을 써서 배열의 합을 구했다. 3. 결론 reduce를 이해해서쓰면 편하다. 4. 정리 reduce의 첫번째 인자는 callback function이 오고, 두번째인자는 initialValue가 온다. 두번째인자는 생략가능하다. 출처 - 프로그래머스, MDN공식문서
먼저 나머지가 0이 되는 숫자를 빈배열에 넣고, 오름차순으로 정렬해서 리턴하는 방식으로 풀었다. 다만 모두다 나누어떨어지지않는다면 [-1] 출력되는 예외처리를 하였다. 1. 나의 풀이 2. 다른사람 풀이 3. 결론 지난시간에 안쓴 삼항연사자를 썼으나, map과 arrow function에 익숙해져야겠다. 4. 정리 arrow function을 쓰면 function 쓰는법이 간편해진다. 출처 - 프로그래머스, MDN공식문서