일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Load Balancer
- 프로그래머스
- 항해99
- 메소드
- mongodb
- 노마드코더
- elb
- nomadcoder
- 생활코딩
- java
- 타입스크립트
- CORS
- Joi
- JWT
- TypeScript
- Node.js
- https
- reduce
- 조건문
- npm
- it
- 자바스크립트
- mongoose
- ubuntu
- AWS
- MYSQL
- wil
- JavaScript
- nginx
- Nodejs
- Today
- Total
목록프로그래머스 (16)
V-logue
에.. 대충 어떤 문제냐면, 이런 문제다. function solution(x) { var arr = (x+"").split("").map(Number) for (let i=0; i acc+cur) === 0) { return true } else if (parseInt(x) % arr.reduce((acc , cur) => acc+cur) !== 0){ return false } } 이전에 사용했던 reduce함수를 다시 사용하면 되는데, 하샤드 수가 18이라고 치면 1+8 =9고 18 % 2 === 0 이 되야하기 때문에, 일단 18이라는 수를 나눠줄 필요가 있다. (x+"").split(..
function solution(n) { var answer = (n+'').split('').map(Number).reverse() return answer } 귀찮으니 간단하게 설명하자면 , (n+"")로 n을 문자열로 만들고 // .split("")으로 문자열이 된 n을 배열화 시켜준 뒤 .map(Number) 문자열이 된 배열의 요소들을 다시 숫자로 바꿔주고 배열의 순서를 reverse( )시켜주면 된다. 문제를 푸는데 도움을 주신 https://programmerpsk.tistory.com/128 문자열을 숫자 배열로 쉽게 바꾸기 가끔 ajax 통신을 하면 데이터 양이 너무 커서 스트링으로 변환해서 보낼때가 있다. 서버에서는 받아온 데이터를 다시 배열로 바꾸어줘야 하는데 그때 주로 사용하는 함수..
function solution(n) { var answer = (n % Math.sqrt([n]) === 0 ? (Math.sqrt([n]) + 1) * (Math.sqrt([n]) + 1) : -1 ) return answer; } x 값의 제곱인 n에 루트를 씌우는 함수인 Math.sqrt를 사용해 x값으로 만들어주고 n % x의 나머지가 0 이라면 x * x인 선택문1과 그게 아니라면 -1인 선택문 2를 만들었다. ez
일단 이 문제를 푸는데, 바로 생각난 것이 숫자를 배열로 만들어서 배열의 합을 구하면 될 것 같다는 생각을 했다. 그런데 reduce의 용법을 제대로 이해하지 못해, 정답을 확인하고 나서 알게 된 것이 function solution(n){ return n.toString().split('').reduce((function(acc, cur) {return +acc + +cur}),0); } 보면 알겠지만, 따로 변수를 주지않고 return값에 모든 코드를 집어 넣은 모습을 볼 수 있다. 일단 callback 함수에 대한 이해가 필요할 것 같아 찾아보았다. 개인적인 사견으로 Callback 함수란, 더보기 파라미터로 함수를 전달하는 함수, 익명으로도 전달 가능하다. 콜백(callback) 함수란 파라미터(..
처음에 위에 설명만 보면 이게 뭔소린가 싶지만, 아래에 입출력 예 설명을 보면 아 이거 엄청 쉬운거구나 하고 풀 수 있다. function solution(a, b) { let answer = 0; for (let i = 0; i < a.length; i++) { answer += a[i] * b[i] } return answer; } 어레이 a와 b에 a나 b값만큼 길이를 가진 i값을 하나씩 대입해서 곱해주고 그걸 재할당하여 answer에 쌓아주면 된다. ez
대충 이런 문제다. function solution(n) { var answer = ''; for (i = 0; i < n; i++) { answer += i % 2 === 0 ? "수" : "박" } return answer; } 풀이는 무척 간단한데, 삼항 연산자를 사용하면 쉽게 문제를 해결할 수 있다. i값에 바로 삼항연산자를 걸어버리는게 아니라, 따로 조건을 만들고 i에 그 조건을 대입하려고 하다보니 생각보다는 시간이 오래걸렸다.
대충 이런 문제인데, 나는 match 함수를 이용하여 풀었다. Match 함수란 , 더보기 str.match(regexp) 라는 용법으로 사용하며, 특정 문자열 내의 단어를 찾고자 할 때 사용한다. 또한 , 단어만 찾을 수 있는 것이 아니라 정규식을 이용해 특정 패턴을 분석할 때도 사용할 수 있다. var str = 'pYYYYYY' str.match('p'); // p가 있기 때문에 p를 출력한다. var regular = "Hi, Hello, Hi, Bye" var regExp = /Hi/gi; regular2 = regular.matcg(regExp) // 결과값 [Hi, Hi] 이런식으로 대충 사용할 수 있다. 나는, function solution(s){ var a = s.toLowerCase(..