본문 바로가기

전체 글

(171)
[코드 작성][보호절 숙어] 좋은 분기문 작성법 http://redutan.github.io/2016/04/01/good-if
[프로그래머스][2018 KAKAO BLIND RECRUITMENT][Python] 다트 게임 [ 문제 ] 문제 풀러 가기 [출제 의도] 문자열 처리 [ 문제 풀이 ] 보너스와 옵션에 맞춰 누적된 숫자에 계산해주면 됩니다. 다만, 이를 문자열을 한 글자씩 처리할 경우 신경써서 처리해야 할 부분이 생깁니다. 두 자리 수입니다. 두 자리 수는 10밖에 없습니다. 따라서 10을 미리 한 자리 문자열로 치환하면 계산을 쉽게 처리할 수 있습니다. [ 정답 코드 ] # S: 1제곱, D: 2제곱, T: 3제곱 # *: 해당 점수와 바로 전에 얻은 점수를 각 2배 # #: 해당 점수를 마이너스 def solution(dartResult): li = [] i = -1 dartResult = dartResult.replace("10", "K") for n in dartResult: if n == "S": cont..
[그래프] 최단 경로 트리 알고리즘 vs 최소 신장 트리 알고리즘 다익스트라, 플로이드: 최단 경로 트리 프림: 최소 신장 트리 최단 경로 트리 알고리즘과 최소 신장 트리 알고리즘은 서로를 보장하지 않음 따라서 위의 사진을 보면 프림 알고리즘이 0->2의 비용이 더 나가는 것을 볼 수 있음 (최단 경로를 보장하지 않기 때문이다.) 최소 신장 트리 알고리즘에는 모든 정점을 연결하는데 의의가 있다. 다익스트라와 플로이드의 차이는 다익스트라 : 시작 정점 to 모든 최단 경로 플로이드 : 모든 정점 to 모든 정점 최단경로