• (백준 알고리즘 문제풀이) 11403번 경로 찾기

    문제 문제 링크 어떻게 접근할 것인가 이 문제는 모든 노드에서 모든 노드까지 갈 수 있는 길이 있는지 보는 문제이다. 때문에 플로이드 와샬을 또 써부렸다. 코드 #include <cstdio> #include <queue> using namespace std; int n, arr[100][100], visited[100]; int main(){ scanf("%d", &n); for(int i = 0; i < n; i++){ for(int j...


  • (백준 알고리즘 문제풀이) 1012번 유기농 배추

    문제 문제 링크 어떻게 접근할 것인가 이 문제는 연결된 친구들의 개수를 구해주는 문제이다. 따라서 BFS를 이용해서 또는 DFS를 이용해서 풀 수 있다. BFS로 노드가 발견될 때까지 진행하고 발견된 노드는 0으로 바꿔주었다. 코드 #include <cstdio> #include <vector> #include <queue> #define pii pair<int, int> using namespace std; int t, m, n, k,...


  • (강화학습 입문) 5. 강화학습 심화:폴리시 그레이디언트(Policy Gradient)

    폴리시 그레이디언트 정책 기반 강화학습 그간 배웠던 강화학습은 가치 기반이다. 가치 기반은 가치함수를 기반으로 행동을 선택하고 업데이트하면서 학습한다. 정책 기반 강화학습은 가치함수를 토대로 행동을 결정하지 않고 상태에 따로 바로 행동을 선택한다. 큐함수를 근사했던 딥살사와 달리 정책 기반에서는 인공신경망이 정책을 근사한다. 정책신경망(정책을 근사하는 인공신경망)에서는 출력층의 활성함수가 Softmax함수이다. Softmax함수란? Softmax함수는 출력이 다...


  • (강화학습 입문) 4. 강화학습 심화:딥살사(Deep SALSA)

    5장 강화학습 심화 1: 그리드월드와 근사함수 이번 장부터 내용이 매우 심화되어서 이해하는데 어려움을 겪었다. 내가 공부한 내용을 정리해보고자 한다. 근사함수 몬테카를로, 살사, 큐러닝의 한계 앞서 보았듯이 다이내믹 프로그래밍과 다르게 위 3가지 방법은 모델 프리하게 학습할 수 있다. 하지만 경우의 수가 우주의 원자 수보다 많은 환경에서 발생하는 계산 복잡도와 차원의 문제라는...


  • (백준 알고리즘 문제풀이) 11404번 플로이드

    문제 문제 링크 어떻게 접근할 것인가 이 문제는 모든 도시에서 모든 도시까지의 거리를 구하는 문제이다. 플로이드 와샬 알고리즘을 이용해서 풀었다. 코드 #include <cstdio> #define INF 987654321 using namespace std; int main(){ long long d[101][101]; int n, m, u, v, w; scanf("%d %d", &n, &m); for(int i = 0; i <...