일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 코딩테스트
- Java
- javascript
- generic class
- python
- 개발자취업
- mybatis
- js
- sql
- spring
- 자바의정석
- BFS
- Algorithm
- 항해99
- 코테
- 크루스칼
- Queue
- 코딩테스트준비
- 99클럽
- 가상컴퓨팅
- 자료구조
- 99클럽 #코딩테스트준비 #개발자취업 #항해99 #til
- til
- 공개키 암호화
- 알고리즘
- dbms
- JPA
- jsp
- 암호학
- DB
- Today
- Total
목록대외 활동 및 IT 지식 (18)
PLOD

1. 문제 상황문제 이름: 냅색문제 (백준 1450번)문제 설명: N개의 물건이 있고, 각 물건의 무게가 주어진다. 가방에 담을 수 있는 최대 무게는 C이다. 이때, 가방에 담을 수 있는 물건들의 조합 수(부분집합의 합이 C 이하인 경우)를 구하는 문제다.제한사항:N ≤ 30이므로 모든 부분집합을 계산하면 2^30으로 비효율적C는 최대 10^9까지 가능하여 DP 방식의 배열 접근이 어려움🧠 문제 접근무게가 있는 n개의 물건이 있다. 이 중 몇 개를 골라 가방에 넣을 수 있는데, 가방에 담을 수 있는 최대 무게는 C이다.조건을 만족하는 물건 조합의 수를 구해야 한다.단, n의 최대가 30이기 때문에 부분집합 개수는 2³⁰ ≒ 10⁹으로 완전탐색은 시간 초과.🤔 문제 해결 아이디어n이 30이므로, 배열을..

문제 상황도시들이 도로로 연결되어 있고, 매 도로에서 퍼레이드가 열릴 수 있다. 퍼레이드가 열리면 해당 도로를 사용할 수 없게 되는데, 이 때 최단 경로가 영향을 받는 정점쌍(s, t)의 개수를 각 도로별로 구하는 문제다.단순히 보면, 도로 하나씩 막고 다익스트라를 돌리면 될 것 같지만, 그렇게 하면 시간 초과가 발생할 수 있다.어떤 시도를 했는지첫 시도: 각 도로를 하나씩 제거하고 다익스트라를 수행한 뒤, 원래의 최단 경로보다 멀어진 정점들을 확인해 카운트하는 브루트포스 방식으로 구현했다.성공은 했지만 비효율적: Python에서 다익스트라를 M번 반복하는 방식은 입력 수가 많아질수록 매우 느려졌다.작성 코드# https://www.acmicpc.net/problem/16118import sys, hea..

공부한 내용 본인의 언어로 정리하기오늘은 백준 16118번 달빛 여우 문제를 풀며, 상태를 갖는 다익스트라 알고리즘을 공부했다.기본적인 다익스트라 알고리즘은 하나의 최단 거리만을 저장하지만, 이 문제에서 늑대는 이동 시 두 가지 속도 상태(빠름, 느림)를 반복하므로 각 노드에 대해 두 개의 거리 정보를 저장해야 한다.핵심은 다음과 같다:여우는 평범한 다익스트라를 사용한다.늑대는 "빠름 → 느림 → 빠름…"의 패턴을 따르므로, 각 상태에 따라 비용이 다르다.빠를 때는 거리의 절반(weight // 2)느릴 때는 거리의 두 배(weight * 2)늑대의 다익스트라는 distance[node][0 or 1] 구조를 통해 상태 전환을 관리하며 진행된다.또한, 정수 연산을 위해 모든 간선 거리를 2배 해주는 트릭..

https://www.youtube.com/watch?v=se4XNproiVg https://www.youtube.com/watch?v=ZcmUt6N7gvs

1. 데이터베이스 락에서 비관적 락과 낙관적 락에 대해 설명해주세요.더보기1. 비관적 락 (Pessimistic Lock)개념: 트랜잭션에 의해 데이터 충돌이 발생할 가능성이 높다고 가정하고, 트랜잭션이 데이터를 수정하는 동안 다른 트랜잭션이 해당 데이터에 접근하지 못하게 하는 방식입니다.동작 원리: 트랜잭션이 데이터를 읽거나 수정하려 할 때, 미리 락을 걸어서 다른 트랜잭션이 그 데이터를 수정하지 못하게 합니다. 락이 해제될 때까지 해당 데이터에 대한 접근이 제한됩니다.장점: 충돌을 미리 방지하므로 데이터 무결성이 보장됩니다.단점: 락을 오래 유지하게 되면 성능 저하가 발생하고, 자원 경쟁이 심한 경우 데드락(교착 상태)이 발생할 수 있습니다.사용 예시: 은행 시스템처럼 여러 사용자가 동시에 동일한 데..