문제 www.acmicpc.net/problem/1445 알고리즘 다익스트라 풀이 쓰레기와 쓰레기 근처를 최소로 하여 도착지까지 도착해야하는 문제입니다. 다익스트라에서 사용하는 $dist$배열을 pair형태로 사용합니다. first와 second는 각각 지나간 쓰레기와 쓰레기 근처를 지나간 횟수를 의미합니다. pair값들의 비교를 위해 $comp$를 함수를 작성했습니다. 다른 부분은 일반적인 다익스트라와 동일합니다. 코드 #include #define rep(i, n) for (int i = 0; i M; rep(i, N) rep(j, M) { char x; cin >> x; if (x == 'g') { board[i]..
문제 www.acmicpc.net/problem/2276 알고리즘 다익스트라 풀이 $N X M $ 격자판에 표면의 높이들이 주어질 때, 채울 수 있는 최대 물의 높이를 구하는 문제입니다. 격자판의 밖에서 격자판으로 물이 스며가는 형태로 구현을 했습니다. 즉 다익스트라의 시작점은 격자판의 테두리 부분이고 도착점은 테두리를 제외한 칸이라고 생각할 수 있습니다. 다익스트라는 하나의 시작점으로부터 하나의 도착지를 구하는 알고리즘이라 이를 적용하려면 약간의 테크닉을 써야합니다. A개의 시작점과 B개의 도착점이 주어졌다면, A개의 시작점들의 조상 시작점과 B개의 도착점들의 조상 도착점을 하나씩 만드는 것입니다. 아래코드에서는 각각 i*j, i*j+1로 사용하였습니다. 그리고 모든 격자판을 연결하는데, 높이가 높은 ..
Validator 클라이언트가 작성한 폼 객체를 검사하지 않으면 데이터베이스에 잘못된 데이터가 들어가 오류를 일으킬 수 있습니다. 또한 확인을 통해 잘못된 값이 들어왔다는 것을 확인하더라도 클라이언트가 에러 메시지를 받지 못하면 어떠한 이유에서 가입을 실패했는지 알 수 없어 서비스를 제대로 이용할 수 없게 됩니다. 스프링은 이를 해결하기 위해 다음의 두 인터페이스를 제공합니다. org.springframework.validation.Validator org.springframework.validation.Errors Validator은 아래와 같은 인터페이스를 사용합니다. public interface Validator{ boolean supports(Class clazz); void validate(O..
- Total
- Today
- Yesterday
- hld
- bfs
- 2-SAT
- 이분매칭
- 세그먼트트리
- dfs
- sweeping
- spring
- 스위핑
- string
- Suffix Array
- 정렬
- SCC
- 펜윅트리
- Oracle
- 이분탐색
- union find
- DP
- Fenwick
- kmp
- 동적계획법
- implementation
- sorting
- 좌표압축
- Segment tree
- dijkstra
- knapsack
- greedy
- spring boot
- 트라이
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |