![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/QwcyM/btqGbIlIYdy/sKnLhk79B2NtEiQY4SHiH1/img.png)
[BOJ 7569 (S1) 토마토 리뷰] 토마토 2D버전을 푼 경험이 있기에 쉽게 풀었다. 기존 4방향에서 확인하던것을 '상,하,좌,우,위,아래' 6가지 경우에 대해 BFS를 수행하면된다. 한가지 생각해야 할점은 익은 토마토가 여러개 존재할 수 있으므로 시작할때 존재하는 익은 토마토 모두에 대해 BFS를 수행해야 한다. 이는 익은 토마토를 미리 Q에 push함으로써 해결할 수 있다. 1일에 1칸씩 이동할 수 있기에 BFS를 수행할때마다 현재위치+1를 해주면 가장 거리값이 큰 위치가 마지막으로 토마토가 익는 위치이다. #include #include #include #include #include #include #include #include #include #include using namespace ..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/cKggJ0/btqGbG2w1Qs/WNSaknMj9gqH9lEWOXRil0/img.png)
[BOJ 9466 (G4) 리뷰] 처음엔 간단해보였지만 풀다보니 생각하지 못한 경우의 수 때문에 애를 많이 먹었다. 처음엔 단순히 싸이클이 존재할때만 해당 학생들을 제외하여 코딩을 했는데 틀렸다고 나왔고 반례를 찾아보니 1->3->5->3과 같이 중간부터 싸이클이 시작될 경우를 고려하지 않았다. 다시 머리를 싸맨 후 싸이클이 도는 학생들만 제외를 시키도록 하였고 제출을 했으나 시간초과가 나왔다.... 코드 중간에 싸이클에 속하지않은 학생들을 걸러내는 작업에서 O(n^2)가 되었던것 같다. 포기할까 했지만 억지스러운 최적화 후에 정답처리가 되었다. 효율적인 코드인지는 모르겠다 .. #include #include #include #include #include #include #include #includ..
- Total
- Today
- Yesterday
- nodeJS
- nestjs
- typeORM
- 재귀
- dfs
- 동적계획법
- 구현
- 자바
- 투포인터
- Computer Architecture
- 스레드
- 세그먼트 트리
- node.js
- 예외처리
- 시뮬레이션
- 백트래킹
- 중앙대학교
- boj
- 벨만포드
- ReactNative
- 자바스크립트
- 컴퓨터 통신
- 그래프
- BFS
- 그리디
- java
- 컴퓨터 구조
- nest.js
- 백준
- 알고리즘
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |