일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- A Very Big Sum
- algorithim
- Breaking the Records
- #nodejs#express
- Between Two Sets
- git
- Apple and Orange
- Divisible Sum Pairs
- Migratory Birds
- 자료구조
- 생활코딩
- 노드
- Grading Students
- 자바스크립트
- hackerrank
- Birthday Chocolate
- Sock Merchant
- nodejs
- alogrithim
- 짝수와 홀수
- Time Conversion
- Javascript
- 알고리즘
- 프로그래머스
- javascirpt
- Data Structure
- Ellectronics Shop
- Drawing Book
- Algorithm
- #nodejs#노드js
- Today
- Total
목록Algorithm (52)
ian의 개발일기장
문제 오타인것 같다. 626331이다. 1. 나의 풀이 while문을 이용하여, count를 세어 return 시켰다. 2. 다른사람 풀이 재귀함수를 이용한 풀이다. 3. 결론 재귀함수와 오랜만에 쓴 while문에 익숙해져야겠다. 4. 정리 조건이 거짓이 되면 while 문은 끝난다. 출처 - 프로그래머스, MDN공식문서
1. 나의 풀이 문제 의도대로 자릿수의 합을 구해서, 원래 숫자가 나누어 떨어지는것을 이용했다. 입력값이 숫자여서, 자릿수의 합을 구하기위해서 숫자를 배열로 바꾸려고 String 과 map을 이용했다. 그리고 자릿수의 총합을 구하기 위해서 reduce를 이용했다. 2. 다른사람 풀이 로직은 거의 비슷하나, 세부사항이 약간 다르다. 숫자를 문자열로 바꾸는법과 문자열을 숫자로 바꾸는법, 그리고 true, false를 return하는 방법이 조금다르다. 3. 결론 숫자모양을 가진 문자열을 숫자로 바꾸는 방법은 +'숫자모양문자열' 이다. 컴퓨터 언어에서 1은 true , 0은 false 다. 4. 정리 출처 - 프로그래머스, MDN공식문서
1. 나의 풀이 원래의 숫자를 약수로 나누면 나머지가 0인것을 이용했다. 2. 다른사람 풀이 ES6 문법을 이용했다. 3. 결론 수학공부? 4. 정리 위키피디아에서 약수에 대해 더 공부합시다. 출처 - 프로그래머스
1. 나의 풀이 숫자를 배열로 바꾸기 위해서, String을 이용해 문자열로 바꾼후 split을 이용해 배열로 바꾸었다. 그리고 map을 이용해서 배열의 모든원소들을 숫자로 바꾸었다. 숫자를 큰수부터 작은수로 배치하기 위해서 sort를 이용해서 내림차순으로 정렬후, join을 이용해서 배열을 없앴다. 그리고 숫자로 결과를 리턴하기위해 다시 숫자로 바꾸어주었다. 2. 다른사람 풀이 아이디어는 비슷하다. 다만 reverse를 활용했다. sort()로 오름차순으로 정렬후, reverse를 이용했다. 3. 결론 sort에 대해 조금더 이해했다. 4. 정리 [1, 10, 2]를 그냥 sort()로 실행하면, [1, 10, 2]로 출력된다. sort 안에 callback을 넣어주면 내림차순이나 오름차순으로 정렬 할..
1. 나의 풀이 2로 나누어서 나머지가 0이면 짝수, 1이면 홀수로 판별했다. if문이 아닌 삼항연산자를 활용했다. 2. 다른사람 풀이 if문을 사용해서 명확하게 보이게했다. 3. 결론 % 연산에 대한 이해가 중요하다. 4. 정리 나머지를 구하는 연산자이다. 출처 - 프로그래머스, MDN공식문서
1. 나의 풀이 먼저 숫자를 문자로 바꾼다음에, split 메소드를 이용해서 문자를 배열로 바꾸었다. 그다음 for문을 통해 마지막 원소부터 빈배열에 추가 시켰다. 2. 다른사람 풀이 reverse 메소드와 map 메소드를 사용했다. 3. 결론 reverse 함수를 공부해야겠다. 4. 정리 예를 보면 알겠지만, 배열에 reverse를 사용하면 모든원소를 반전시킨다. 출처 - 프로그래머스, MDN공식문서
1. 나의 풀이 마지막 4글자만 제대로 나오고, 나머지는 *로 바꾸기 위해서, for문을 활용했다. 2. 다른사람 풀이 정규포현식와 string.replace를 사용했다. 3. 결론 정규표현식 공부를 해야겠다. 4. 정리 정규포현식을 사용해서, stirng을 바꾸는 문법이다. 이걸 잘사용하기위해서, 정규포현식을 공부해야겠다. 출처 - 프로그래머스, MDN공식문서
1. 나의 풀이 배열을 복사해서, sort를 이용한 정렬을 이용해서 최솟값을 찾고, 최솟값의 인덱스를 찾아서 splice를 이용해서 최솟값을 제거했다. 2. 다른사람 풀이 spread operator를 사용했다. 3. 결론 ES6 spread operator에 익숙해져야겠다. 4. 정리 spread operator 예제를 많이 보면 이해가 될것이다. 출처 - 프로그래머스, MDN공식문서
1. 나의 풀이 행과 열이 같은 행렬끼리, 더하려고 생각하다보니 새로운 배열을 만들기보다는 arr1에 arr2의 원소들을 각각 더하면 된다고 생각했다.각 행과 열을 맞춰주기위해서 이중 for문을 사용했다. 2. 다른사람 풀이 map을 쓰니 깔끔하다. 3. 결론 이중 for문이 아닌 이중 map을 쓰니, 코드가 더 간결하다. 4. 정리map 메소드의 인자로 callback function이 들어가며, callback function의 첫번째 인자는 현재값, 두번째인자는 현재값의 인덱스, 세번째 인자는 원래배열이다. 출처 - 프로그래머스, MDN공식문서
루트를 씌워서 정수인지 판별하고, 정수이면 1을 더해서 제곱했다. 정수가 아니면 -1을 리턴했다. 1. 나의 풀이 Math.sqrt 와 Number.isInteger를 이용하여 정수를 판별했다. 2. 다른사람 풀이 반복문을 통해, 정수가되는것을 찾았다. 3. 결론 Math 함수는 간편하다. 4. 정리 공식문서에 문법과 예제가 자세하게 나와있다. 다만 무조건 Number를 붙여서 써야한다. 출처 - 프로그래머스, MDN공식문서