일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Redux
- CSS
- nextjs
- JavaScript
- 카카오맵
- react
- 카카오맵 api
- es11
- Hooks
- optional chanining
- css #html
- es6
- Python #Baekjoon
- Default parameter
- Python
- Nullish Coalescing Operator
- React #Hooks
- BOJ
- 프로그래머스
- Python #CodeUp
- HTML
- Next
- HTML #CSS
- firebase
- spread operation
- React Kakao map
- Template literals
- Today
- Total
목록분류 전체보기 (105)
거북이개발자
0. 제목 학급 회장(해쉬) 1. 문제 2. 풀이 1차 dictinary를 이용하였다 Map은 ES6문법이다. 3. 코드 1차 function solution(s) { let answer; var dic={'A': 0, 'B': 0, 'C': 0, 'D': 0, 'E': 0} for(var i in str){ dic[str[i]]+=1; } answer=Object.keys(dic).reduce((a, b) => dic[a] > dic[b] ? a : b) return answer; } let str = "BACBACCACCBDEDE"; console.log(solution(str)); 2. 풀이 2차 Map함수를 이용하였다. Map 3. 코드 2차 function solution(s) { let ans..
0. 제목 연속 부분 수열2 1. 문제 2. 풀이 1차 더블포인터 원리 이용해서 합이 5이하인수는 그 p1, p2사이의 부분수열 갯수를 더한다. 3. 코드 function solution(m, arr) { let answer = 0 var n = arr.length var p1 = 0; var p2 = 0; var sum = 0; for(p1=0; p1m) { sum -= arr[p2] p2++; } answer += p1 - p2 + 1; } return answer; } let a = [1, 3, 1, 2, 3]; console.log(solution(5, a));
0. 제목 연속 부분수열1 1. 문제 2. 풀이 투포인터 알고리즘을 이용한다. p1은 오른쪽으로 더해나가고, p2는 합이 m보다 크거나 같을때 빼진다. 3. 코드 function solution(m, arr) { let answer = 0 var p1=0; var p2=0; var n=arr.length; var sum=0; while(p1m){ sum-=arr[p2]; p2++; continue; } sum+=arr[p1] p1++ console.log(sum) } return answer; } let a = [1, 2, 1, 3, 1, 1, 1, 2]; console.log(solution(6, a));
0. 제목 공통원소 구하기 1. 문제 2. 풀이 1차 2중 for문을 이용해서 한개의 array를 전부도는걸 여러번 반복했다. 3. 코드 1차 function solution(arr1, arr2) { let answer = []; arr1.sort(); arr2.sort(); var p1=0; while(p1a-b); var p1=0, p2=0; while(p1
0. 제목 두 배열 합치기 1. 문제 2. 풀이 1차 for 문으로 배열의 shift를 이용했다. 3. 코드 1차 function solution(arr1, arr2) { let answer = []; while (true) { var a = arr1[0]; var b = arr2[0]; if (arr1.length === 0) { answer = [...answer, ...arr2] break; } else if (arr2.length === 0) { answer = [...answer, ...arr1] break; } if (a >= b) { if (answer.includes(b) === false) { answer.push(arr2.shift()) } else { arr2.shift() } } e..
0. 제목 프로그래머스 타겟 넘버 1. 문제 https://programmers.co.kr/learn/courses/30/lessons/43165 코딩테스트 연습 - 타겟 넘버 n개의 음이 아닌 정수가 있습니다. 이 수를 적절히 더하거나 빼서 타겟 넘버를 만들려고 합니다. 예를 들어 [1, 1, 1, 1, 1]로 숫자 3을 만들려면 다음 다섯 방법을 쓸 수 있습니다. -1+1+1+1+1 = 3 +1-1+1+1+ programmers.co.kr 2. 풀이 bfs완전 탐색을 이용한다. bfs구현은 큐, 재귀함수가 있는데 재귀함수를 이용했다. 재귀를 통해 1더한값과 1뺀값을 2개의 케이스로 운용한다. 3. 코드 function solution(numbers, target) { var answer = 0; co..
0. 제목 프로그래머스 문자열 압축 1. 문제 https://programmers.co.kr/learn/courses/30/lessons/60057 코딩테스트 연습 - 문자열 압축 데이터 처리 전문가가 되고 싶은 "어피치"는 문자열을 압축하는 방법에 대해 공부를 하고 있습니다. 최근에 대량의 데이터 처리를 위한 간단한 비손실 압축 방법에 대해 공부를 하고 있는데, 문 programmers.co.kr 2. 풀이 for 문으로 1개식 2개씩... 반복하는것들 케이스마다 배열에 넣는다 중복되는 값이 있으면 for문에 넣어서 몇개가 중복되는지 본다 문자열 최소길이값을 출력한다. 3. 코드 function solution(s) { var answer = 0; let lengths = [] let lengths_l..
0. 제목 프로그래머스 124 나라의 숫자 1. 문제 https://programmers.co.kr/learn/courses/30/lessons/12899 코딩테스트 연습 - 124 나라의 숫자 programmers.co.kr 2. 풀이 결국 1, 2, 4를 반복해서 올라가는 과정이다. 4, 1, 2를 3진법의 0, 1, 2에 대응한다. 4일경우는 나눈몫에서 -1을 해야한다. 3. 코드 def solution(n): answer = '' while n: n, nam=divmod(n,3) answer="412"[nam]+answer if not nam: n -= 1 return answer