| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- HTML
- [파이썬 실습] 기초 문제
- 리트코드
- 간단한 날씨 웹 만들기
- 개발공부
- 프로그래머스
- 자바스크립트 sort()
- 프론트개발
- [파이썬 실습] 심화 문제
- RN 프로젝트
- 자바스크립트 날씨 웹 만들기
- 자바스크립트
- 날씨 웹 만들기
- 코드스테이츠
- JavaScript
- 개발일기
- 코딩부트캠프
- 자바스크립트 split()
- 엘리스 ai 트랙
- 엘리스 AI 트랙 5기
- 자바스크립트 reduce()
- [AI 5기] 연습 문제집
- leetcode
- 부트캠프
- 자바스크립트 날씨
- reactnativecli
- 프론트개발공부
- [파이썬 실습] 중급 문제
- 엘리스
- 삼항연산자
- Today
- Total
목록전체 글 (287)
개발조각
이번 문제는 쉬워서 바로 풀었습니다.😁 이 문제는 n보다 큰 숫자 중에서 n을 2진법으로 바꾸었을 때의 1의 개수와 n보다 큰 숫자를 2진법으로 바꾸었을 때의 1의 개수가 같은 것 중에서 최솟값을 구하면 됩니다. 해결방안 function solution(n) { let nOne = n.toString(2).match(/1/g).length; while(n++){ let nextOne = n.toString(2).match(/1/g).length; if(nOne === nextOne) return n; } } 1단계. let nOne = n.toString(2).match(/1/g).length; 먼저 n을 2진수로 바꾸었을 때 1이 몇 개 있는지 구하였습니다. toString()은 10진수를 ?진수로 바..
이번 문제는 DP(동적 프로그래밍) 문제라는데 전 솔직히 책을 읽어봐도 동적 프로그래밍이 뭔 소리인지 잘 모르겠습니다... 느낌적으로 동적 프로그래밍이라는 게 기존 테이블에다가 특정 식을 적용한 다른 값을 기존 테이블에 담아 최솟값과 최댓값을 구하는 것 같은데 잘 이해가 안 됩니다. 이 코드가 제 코드가 아니라 풀었다고 하기가 좀 그렇네요.😥 그래도 동적 프로그래밍이 뭔지에 대해 설명하겠습니다. 동적 프로그래밍(dynamic programming) 문제의 크기가 작은 소문제에 대한 해를 저장해 놓고 이를 이용하여 크기가 보다 큰 문제의 해를 점진적으로 만들어 가는 상향식 접근 방법 최솟값 또는 최댓값을 구하는 최적화 문제에 주로 사용 최적성의 원리 주어진 문제에 대한 최적해가 소문제에 대한 최적해로 구성..
두 정점 간의 최단 경로(shortest path)는 가중 방향 그래프에서 두 정점을 연결하는 경로 중에서 간선의 가중치의 합이 가장 작은 경로를 의미한다. 모든 정점 간의 최단 경로는 주어진 그래프에서 경로의 길이, 즉 가중치의 합이 음수인 사이클은 없다고 가정한다. 모든 정점 간의 최단 경로를 구하는 대표적인 알고리즘으로 플로이드(Floyd)알고리즘이 있다. 플로이드 알고리즘은 모든 정점에서 모든 정점으로의 최단 경로를 한꺼번에 구하는 알고리즘으로, 간선의 인접 행렬 표현을 활용하여 경유할 수 있는 정점의 범위가 1인 경로부터 시작해서 1부터 |V|까지 인 경로까지 단계적으로 범위를 늘려 가면서 모든 정점 간의 최단 경로를 구하는 알고리즘이다. 예제 1 다음과 같이 네 개의 정점과 다섯개의 간선으로 ..
편집 거리(edit distance)는 두 문자열 사이의 근접성 또는 유사성을 판단하는 척도로, 철자 검사기에서 잘못된 철자를 만나면 해당 철자와 가장 근접한 다른 단어를 찾아주는 데 활용된다. 일반적으로 편집 거리는 두 문자열 사이에 편집이 필요할수록 커지는 구조이다. 예제 1 x='baa'와 y='aab'가 주어졌을 때 x와 y의 편집 거리를 구하시오. 단, ins=del=1, chg=2 예제 2 x='SNOWY'와 y='SUNNY'가 주어졌을 때 x와 y의 편집 거리를 구하시오. 단, ins=del=1, chg=2 스트링 편집 거리 알고리즘 function solution(x, y, ins, del, chg){ const [row, col] = [x.length, y.length]; let answ..
이번 문제는 소수 구하는 방법만 아시면 쉽게 풀 수 있을 것 같아요. 접근방법 이문제는 문제 설명의 예시를 보시면 이해가 편합니다. 테스트 1 (n= 437674 k=3) 437674을 3진수로 바꾸면 211020101011 문제 설명에서 아래 조건에 맞는 소수(Prime number)가 몇 개인지를 파악하면 211, 2, 11 211, 2, 11이 10진수 기준으로 소수인 개수를 세면 됩니다. 사실 211020101011에서 211020101011 211, 2, 1, 1, 11 5가지 수가 가능하지만 "소수의 정의는 '1과 자기 자신으로밖에 나누어 떨어지지 않고 자기 자신의 곱셈의 역수가 없는 수'이다."임으로 1은 미리 제거하는게 좋다고 생각이 들었습니다. 그래서 1을 제거하면 211, 2, 11이 ..
이번 문제는 쉬운데 제가 문제를 정확하게 안 읽어서 또 삽질했던 문제입니다.😂 피보나치 수가 뭔지 알아서 문제 자체는 쉽게 이해했거든요. 근데 여기서 단순히 피보나치 수를 조건에 맞게 구해야됩니다.!! 그 조건이 뭔지에 대해는 아래에서 설명하겠습니다. 오늘의 교훈 문제 설명을 제대로 읽자!! 접근방법 피보나치 수 설명을 보면 F(2) = F(0) + F(1) = 0 + 1 = 1 F(3) = F(1) + F(2) = 1 + 1 = 2 F(4) = F(2) + F(3) = 1 + 2 = 3 F(5) = F(3) + F(4) = 2 + 3 = 5 이걸 보시면 F(n) = F(n-2) + F(n-1) 인걸 알 수 있고 F(n)를 구하기 위해는 F(0), F(1)은 있으니까 F(2) ~ F(n-1)를 구하면 됩..
이번 문제는 어떻게 구할지에 대한 규칙을 파악하면 쉽게 풀 수 있을 것 같습니다. 접근방법 이 문제는 연속된 자연수들로 n을 표현하는 방법의 수를 구하는 문제입니다. n이 15일 경우 4가지로 표현할 수 있습니다. 1 + 2 + 3 + 4 + 5 = 15 4 + 5 + 6 = 15 7 + 8 = 15 15 = 15 이렇게 연속되는 숫자로 구성이 되어야 됩니다. 그래서 제가 생각한 방법은 1+2+..., 2+3+... 반복해서 더한 값이 n을 구하는 방법입니다. 예시로 설명하겠습니다. n=15인 경우 i=1 -> 1+2+3+4+5 = 15 : true i=2 -> 2+3+4+5+6 = 20 : false i=3 -> 3+4+5+6 = 18 : false i=4 -> 4+5+6 = 15 : true i=5 ..
1번 문제는 어렵다기보다는 코드가 길어져서 제 머릿속도 복잡해지는 그런 문제였습니다. 실상은 단순 주차 요금 계산 문제에요.😉 문제가 너무 길어서 더이상 다 안 붙였습니다. 문제가 길어서 헉!!!😲 하겠지만 단순 주차요금 계산이라 어떠한 차량번호가 입차, 출고한 사이의 시간(몇 분동 안 있었는지)을 구하고 그 시간을 토대로 주차요금을 구하면 됩니다. 주의할 점 1.result에 담을 주차요금은 차량번호의 오름차순으로 넣어야 됩니다. 5961, 0000, 0148 이렇게 3개의 차량번호가 있으면 result에는 아래와 같이 담아야 된다. result = [0000의 주차요금, 0148의 주차요금, 5961 주차요금] 2. 어떤 차량이 입차 된 후에 출차된 내역이 없다면, 23:59에 출차된 것으로 간주한다..