일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Lv. 2
- Lv. 3
- LEVEL 2
- programmers
- level 3
- bfs
- Python
- C언어
- 소프티어
- 자바스크립트
- join
- Java
- Lv. 0
- 동적계획법
- Dynamic Programming
- dfs
- 프로그래머스
- group by
- select
- 오블완
- Lv. 1
- softeer
- 파이썬
- SQL 고득점 KIT
- 너비 우선 탐색
- 깊이 우선 탐색
- javascript
- 티스토리챌린지
- SQL
- DP
- Today
- Total
목록알고리즘/알고리즘 이론 (7)
몸과 마음이 건전한 SW 개발자
문제 링크https://school.programmers.co.kr/learn/courses/30/lessons/12921?language=python3 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr정답 코드def solution(n): if n 풀이 방법sieve 리스트 초기화:처음에 모든 숫자를 소수로 가정하고 True로 초기화한다.0과 1은 소수가 아니므로 False로 설정한다.소수 판별 및 배수 제거:2부터 시작해서 소수로 판별된 숫자의 배수를 False로 설정한다.이 과정을 숫자의 제곱근까지 반복한다.결과 반환:소수로 남아 있는 숫자들의 개수를..
문제 링크https://school.programmers.co.kr/learn/courses/30/lessons/12940 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr정답 코드class Solution { public int gcd(int n, int m) { // m이 크다고 전제하고 게산 int tmp = m; if (n > m) { m = n; n = tmp; } while (n > 0) { int o = m; ..
구현 1 : 쉬프트 연산자(>>) 사용하기function toBinaryUsingShift(num) { let binary = ""; while (num > 0) { let lastBit = num & 1; // num의 마지막 비트를 가져옵니다. binary = lastBit + binary; // 결과 문자열에 비트를 추가합니다. num = num >> 1; // 오른쪽으로 한 비트 쉬프트합니다. } return binary || "0";}구현 2 : 숫자를 2로 나누기function toBinaryUsingDivision(num) { let binary = ""; while (num > 0) { let remai..
구현 // 최대공약수 const gcd = (n1, n2) => { // 일반적으로 n1이 크다고 전제하고 계산 if (n2 > n1) { [n1, n2] = [n2, n1]; }; // n2가 0이 될 때까지 진행 while (n2) { [n1, n2] = [n2, n1%n2]; }; return n1 }; // 단순 최소공배수 const simpleLcm = (n1, n2) => { for (let num = Math.max(n1, n2); num { // 최대공약수를 활용 return (n1 * n2) / gcd(n1, n2); }; console.log(uclidLcm(123, 456)); // 18696 console.log(simpleLcm(123, 456)); // 18696
구현 const eratostenes = (number) => { if (number
구현 def bubbleSortAsc(arr, n): for idx in range(n-1, -1, -1): for jdx in range(idx): if arr[jdx] > arr[jdx+1]: arr[jdx], arr[jdx+1] = arr[jdx+1], arr[jdx] return arr def bubbleSortDesc(arr, n): for idx in range(n-1, -1, -1): for jdx in range(idx): if arr[jdx] < arr[jdx+1]: arr[jdx], arr[jdx+1] = arr[jdx+1], arr[jdx] return arr arr = [2, 7, 5, 1, 4, 6, 3] sortedArrAsc = bubbleSortAsc(arr, len(arr)..