| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- 백준
- 순환참조
- await
- HttpCookieOAuth2AuthorizationRequestRepository
- CommonJS
- nodejs
- JPA
- Async
- __dirname
- 프리코스
- Global
- 프롬프트
- 다이내믹 임포트
- Console
- 파라메트릭 서치
- import.meta.url
- 프롬프트엔지니어링
- 노드 내장 객체
- 객체지향
- exports
- 객체지향의 사실과 오해
- 8기
- __filename
- MAX_VALUE
- 우테코
- 이분탐색
- 이진탐색
- 우테코 프리코스
- 안드로이드 스튜디오
- oAuth2
- Today
- Total
목록전체 글 (88)
코딩하는 감쟈
알고리즘 문제를 풀다 보면 Integer.MAX_VALUE 대신 INF라는 큰 값을 따로 만들어 쓰는 경우가 많다.이 둘의 차이는 값의 의미가 아니라 연산 안정성이다.1. Integer.MAX_VALUE자바 int 타입이 가질 수 있는 최댓값Integer.MAX_VALUE = 2,147,483,647✔ 특징이론상 가장 큰 int 값비교용 초기값으로 쓰기 좋음❌ 문제점연산(+ 등)을 하면 오버플로우 발생Integer.MAX_VALUE + 1 → 음수로 변함DP나 최단거리에서:dp[i] = dp[j] + cost이런 연산이 있으면 값이 깨져서 오답이 된다.2. INF (임의로 정한 큰 값)문제 범위 내에서:정답이 될 수는 없고더하기 연산을 해도 안전한 큰 수예:int INF = 1_000_000_000;✔ ..
OAuth2 로그인 시 HttpCookieOAuth2AuthorizationRequestRepository가 State를 어떻게 저장하고 검증하는지 단계별로 알아보겠습니다.우선, OAuth2 로그인 플로우 개요를 간단히 보겠습니다.사용자 → 로그인 버튼 클릭 ↓백엔드 → 카카오로 리다이렉트 ↓사용자 → 카카오에서 로그인 ↓카카오 → 백엔드로 리다이렉트 ↓백엔드 → JWT 토큰 발급1. OAuth2 로그인에서 State가 필요한 이유위 과정에서 시작 요청(백엔드 → 카카오)과 콜백 요청(카카오 → 백엔드)은 완전히 다른 HTTP 요청입니다.HTTP는 무상태(Stateless)이기 때문에, 시작 단계에서 시작한 요청과 콜백 단계에서 돌아온 요청이 같은 사용자인지 확인할 방법이 필요합니다..
1. 배낭 문제문제 설명배낭에 담을 수 있는 무게의 최댓값이 정해져 있고, 일정 가치와 무게가 있는 짐들을 배낭에 넣을 때 가치의 합이 최대가 되도록 하는 문제예시배낭 용량: 10kg물건 목록:- 물건 A: 무게 6kg, 가치 13만원- 물건 B: 무게 4kg, 가치 8만원- 물건 C: 무게 3kg, 가치 6만원- 물건 D: 무게 5kg, 가치 12만원2. 배낭 문제의 두 가지 유형1. 0-1 배낭 문제 (0-1 Knapsack) 물건을 쪼갤 수 없음 (넣거나 안 넣거나)그리디로는 최적해를 보장할 수 없음동적 계획법(DP) 사용 필요배낭 용량: 50kg물건 목록:- 물건 A: 무게 10kg, 가치 60만원 (비율: 6.0) 👑 최고 비율- 물건 B: 무게 20kg, 가치 100만원 (비율: 5.0)- ..
1. 그리디 알고리즘이란?정의매 순간 가장 좋아 보이는 선택을 하는 알고리즘지역적으로 최적인 선택이 전역적으로도 최적이 되길 기대하는 방식핵심 특징빠르고 직관적인 해결구현이 비교적 간단항상 최적해를 보장하진 않음2. 그리디 알고리즘의 조건1) 최적 부분 구조 (Optimal Substructure)전체 문제의 최적해가 부분 문제의 최적해로 구성될 수 있어야 함2) 탐욕적 선택 속성 (Greedy Choice Property)각 단계에서의 탐욕적 선택이 최종 최적해로 이어져야 함 ⚠️ 두 조건을 모두 만족할 때만 그리디로 최적해 보장!3. 예제 1: 거스름돈 문제문제동전의 개수를 최소화하여 거스름돈 만들기동전: 500원, 100원, 50원, 10원거슬러줄 금액: 1260원그리디 전략큰 단위부터 최대한 사용..