일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 자바스크립트 sqrt
- 자바스크립트 min
- 다단계큐
- 자바스크립트 for of
- 알고리즘
- 자바스크립트 floor
- 자바스크립트 max
- javascript
- 프로그래머스 자릿수 더하기
- 선점 비선점
- 프로그래머스 입문
- 프로그래머스 js
- JS
- 자바스크립트 abs
- programmers
- 자바스크립트 for in
- 알고리즘 js
- reduce
- 프로그래머스 알고리즘
- 자바스크립트 ceil
- 자바스크립트
- 변수 js
- 프로그래머스 자바스크립트
- 자바스크립트 round
- 딥다이브 변수
- 데이터베이스 key
- 디자인 패턴
- 프로그래머스
- 자바스크립트 pow
- 프로그래머스 옹알이
- Today
- Total
목록알고리즘 (7)
eazyseon

- 문제 설명 - 입출력 예시 - 나의 90점짜리 풀이 function solution(my_string) { let answer = 0; my_string=my_string.split(' ') for(let i=0; i

- 문제 설명 - 입출력 예시 - 나의 풀이 function solution(s1, s2) { let answer = 0; let freCnt = {}; for(let val of s1){ freCnt[val] = (freCnt[val] || 0) +1 } for(let key of s2){ if(freCnt[key]) answer++; } return answer; } 먼저, freCnt라는 객체를 만들어 s1으로 반복문을 돌면서 각 요소가 몇 개씩 있는지 값을 넣어준다. 그럼 freCnt 안에는 { a: 1, b: 1, c: 1 } 이런 식으로 들어가게 된다. 다음 s2의 for문을 돌며 freCnt 안에 해당 요소가 있으면 answer의 숫자에 1을 더해준다. - 다른 사람의 풀이 function ..

- 문제 설명 - 입출력 예시 - 나의 풀이 function solution(my_string, num1, num2) { let answer = ''; let str1 = my_string[num1] let str2 = my_string[num2] let splitArr = my_string.split('') splitArr[num1] = str2 splitArr[num2] = str1 return splitArr.join(''); } 먼저, str [1], str [2]에 해당되는 문자를 변수화해 준다. split 된 배열도 splitArr에 할당해 준다. 그리고 splitArr에서 해당되는 인덱스 번호에 각 각 str1, str2로 바꾸어 준다. - 다른 사람의 풀이 function solution(..

- 문제설명 - 입출력 예시 - 나의 풀이 const solution = (my_string) => { let set = new Set(my_string.split('')) let arr = [...set] return arr.join(''); } 먼저, split 메소드를 이용해서 my_string을 특정 문자 기준으로 배열로 바꿔준다. 그리고 set으로 변환하기 위해 set 생성자를 사용해 중복된 문자를 제거한다. set으로 변환된 값을 전개연산자를 사용해서 배열로 바꿔준다. 마지막으로, 배열의 요소를 하나로 묶어주는 join을 사용해 문자열을 리턴해준다. - 다른 사람의 풀이 function solution(my_string) { return [...new Set(my_string)].join(''..

- 문제 설명 - 입출력 예시 - 나의 풀이 function solution(dot) { if(dot[0]>0 && dot[1]>0){ return 1; }else if(dot[0]0){ return 2; }else if(dot[0] 0 ? 1 : 4 : dot[1] > 0 ? 2 : 3; } 삼항연산자를 사용하여 양을 줄인 풀이법이다. 처음엔 좀 헷갈렸으나 이중삼항연산자를 알아보니 이해가 잘 되었다. 아래처럼 소괄호로 구분하여 사용하는 것도 좋을 듯하다. function solution(dot) { return dot[0] > 0 ? (dot[1] > 0 ? 1 : 4) : (dot[1] > 0 ? 2 : 3); } -배운 점 1. 이중삼항연산자 (내가 정리한 이중삼항연산자 👉 https://eazys..

-문제 설명 -입출력 예 - 나의 풀이 function solution(letter) { const morse = { '.-':'a','-...':'b','-.-.':'c','-..':'d','.':'e','..-.':'f', '--.':'g','....':'h','..':'i','.---':'j','-.-':'k','.-..':'l', '--':'m','-.':'n','---':'o','.--.':'p','--.-':'q','.-.':'r', '...':'s','-':'t','..-':'u','...-':'v','.--':'w','-..-':'x', '-.--':'y','--..':'z' } let answer = ''; const splitLetter = letter.split(' ') for(let..

-문제설명 순서쌍이란 두 개의 숫자를 순서를 정하여 짝지어 나타낸 쌍으로 (a, b)로 표기합니다. 자연수 n이 매개변수로 주어질 때 두 숫자의 곱이 n인 자연수 순서쌍의 개수를 return하도록 solution 함수를 완성해주세요. -입출력 예 n이 20 이므로 곱이 20인 순서쌍은 (1, 20), (2, 10), (4, 5), (5, 4), (10, 2), (20, 1) 이므로 6을 return합니다. n이 100 이므로 곱이 100인 순서쌍은 (1, 100), (2, 50), (4, 25), (5, 20), (10, 10), (20, 5), (25, 4), (50, 2), (100, 1) 이므로 9를 return합니다. -나의 풀이 function solution(n) { let cnt =0; fo..