일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 패스트캠퍼스
- 그리디
- 직장인인간
- 스택
- 삼성 코테
- 패스트캠퍼스후기
- 백준
- 딥러닝 바이블 후기
- 백준 23289
- 코딩테스트
- Python
- 온풍기 안녕!
- 백준 19950
- 문자열
- 직장인인강
- 파이썬 기초부터 시작하는 딥러닝 영상인식 바이블 Online 강의 후기
- 백준 학교 탐방하기
- 프로그래머스
- 백준 3차원 막대기 연결하기
- 백준 9019
- 삼성
- 파이썬
- 패캠챌린지
- 코테
- 직장인자기계발
- 백트래킹
- 파이썬 기초부터 시작하는 딥러닝 영상인식 바이블 Online 강의
- 해쉬
- 최단거리
- MST
- Today
- Total
목록최단거리 (3)
programmingu
문제 문제 네 개의 명령어 D, S, L, R 을 이용하는 간단한 계산기가 있다. 이 계산기에는 레지스터가 하나 있는데, 이 레지스터에는 0 이상 10,000 미만의 십진수를 저장할 수 있다. 각 명령어는 이 레지스터에 저장된 n을 다음과 같이 변환한다. n의 네 자릿수를 d1, d2, d3, d4라고 하자(즉 n = ((d1 × 10 + d2) × 10 + d3) × 10 + d4라고 하자) D: D 는 n을 두 배로 바꾼다. 결과 값이 9999 보다 큰 경우에는 10000 으로 나눈 나머지를 취한다. 그 결과 값(2n mod 10000)을 레지스터에 저장한다. S: S 는 n에서 1 을 뺀 결과 n-1을 레지스터에 저장한다. n이 0 이라면 9999 가 대신 레지스터에 저장된다. L: L 은 n의 각..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bSUNtB/btrnPCoWcXV/kLJKHlndxXkSHfiDwo5Mok/img.png)
최소 신장 트리(MST) 그래프의 모든 정점을 연결하는 간선들의 가중치의 합이 최소가 되는 트리 찾기! 어디에서 시작하는 지 상관없이 모든 정점이 다 이어질 수 있도록 팔을 뻗는다고 생각하면 된다. 간선이 적을 때 => KRUSKAL(간선 중심) 간선이 많을 때 => PRIM(정점 중심) Kruskal 알고리즘 간선을 하나씩 선택해서 MST를 찾는 알고리즘 모든 간선을 가중치에 따라 오름차순으로 정렬 (최초 한번) 가중치가 가장 낮은 간선부터 선택하면서 트리를 증가시킴 *** 사이클을 형성하는 간선은 선택 x!** ⇒ union-find 알고리즘을 이용한다. n-1 개의 간선이 선택될 때까지 반복해서 선택 사이클을 형성하는 방법 ⇒ union-find 추가하고자하는 간선의 양끝 정점이 같이 집합에 속해있..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/biiE6x/btrnDFTDohX/q2yUqKfzAfwOwzIq5mrsp1/img.png)
문제 문제 민승이는 놀러가기 위해 집을 나섰다. 민승이네 집에서 코레스코 콘도까지 가기 위해서는 복잡하게 얽혀있는 골목길들을 통과해야 한다. 그런데, 어떤 길에는 깡패가 서식하고 있어, 그 길을 지나게 되면 깡패에게 일정한 양의 금품을 갈취당하게 된다. 그런가하면, 어떤 길에는 지나가던 행인들이 흘리고 간 금품들이 떨어져 있어, 그 길을 지나게 되면 일정한 양의 금품을 획득하게 된다. 한 번 지나간 길을 다시 방문하더라도 금품을 갈취당하거나 획득한다. 골목길의 연결 상태와, 각 골목길을 지날 때 갈취당하거나 획득하게 되는 금품의 양이 주어졌을 때, 민승이가 최대한 유리한 경로를 따라 집에서 코레스코 콘도까지 가기 위해서는 어떻게 해야 하는지 출력하는 프로그램을 작성하시오. 보유 중인 금품의 양이 음수가 ..