본문 바로가기

프로그래머스/그래프

(5)
배달 - 다익스트라 알고리즘 programmers.co.kr/learn/courses/30/lessons/12978 코딩테스트 연습 - 배달 5 [[1,2,1],[2,3,3],[5,2,2],[1,4,2],[5,3,1],[5,4,2]] 3 4 6 [[1,2,1],[1,3,2],[2,3,2],[3,4,3],[3,5,2],[3,5,3],[5,6,1]] 4 4 programmers.co.kr 문제 설명 N개의 마을로 이루어진 나라가 있습니다. 이 나라의 각 마을에는 1부터 N까지의 번호가 각각 하나씩 부여되어 있습니다. 각 마을은 양방향으로 통행할 수 있는 도로로 연결되어 있는데, 서로 다른 마을 간에 이동할 때는 이 도로를 지나야 합니다. 도로를 지날 때 걸리는 시간은 도로별로 다릅니다. 현재 1번 마을에 있는 음식점에서 각 마을로 음식..
합승 택시 요금 https://programmers.co.kr/learn/courses/30/lessons/72413 코딩테스트 연습 - 합승 택시 요금 6 4 6 2 [[4, 1, 10], [3, 5, 24], [5, 6, 2], [3, 1, 41], [5, 1, 24], [4, 6, 50], [2, 4, 66], [2, 3, 22], [1, 6, 25]] 82 7 3 4 1 [[5, 7, 9], [4, 6, 4], [3, 6, 1], [3, 2, 3], [2, 1, 6]] 14 6 4 5 6 [[2,6,6], [6,3,7], [4,6,7], [6,5,11], [2,5,12], [5,3,20], [2,4 programmers.co.kr 합승 택시 요금 문제 설명 [본 문제는 정확성과 효율성 테스트 각각 점수가 있는 문..
순위 - 플로이드 와샬 플로이드 와샬 알고리즘으로 푸는 문제입니다. 다익스트라 알고리즘의 경우에는 하나의 정점에서 출발했을 때 다른 모든 정점으로의 최단 경로를 구하는 것입니다. 참고: spacefordeveloper.tistory.com/172 다익스트라 알고리즘 # 최단 경로 최단 경로(shortest path)문제는 정점 u와 정점 v를 연결하는 경로 중 간선들의 가중치 합이 최소가 되는 경로를 찾는 문제다. 간선의 가중치는 경우에 따라 비용, 거리, 시간 등으로 spacefordeveloper.tistory.com 플로이드 와샬 알고리즘의 경우에는 '모든 정점'에서 '모든 정점'으로의 최단 경로를 구하게 됩니다. 다익스트라 알고리즘은 현재 노드에서 가장 적은 가중치로 연결된 노드를 골라서 탐색을 해 나간다면 플로이드는 ..
가장 먼 노드 programmers.co.kr/learn/courses/30/lessons/49189 코딩테스트 연습 - 가장 먼 노드 6 [[3, 6], [4, 3], [3, 2], [1, 3], [1, 2], [2, 4], [5, 2]] 3 programmers.co.kr #include #include #include #include #include using namespace std; int bfs( vector&vlist, int target,int n){ queueq; vectorm(n+1,0); q.push(1); m[1]=0; while(!q.empty()){ int vertex= q.front(); q.pop(); for(int i=0; i
브라이언의 고민 programmers.co.kr/learn/courses/30/lessons/1830 코딩테스트 연습 - 브라이언의 고민 programmers.co.kr #include #include #include using namespace std; // 전역 변수를 정의할 경우 함수 내에 초기화 코드를 꼭 작성해주세요. string solution(string sentence) { string answer = ""; int expect=0; //0,1,2,3,4 mapm; int t=0; while(sentence.size()>0){ if(sentence.size()>=3){ if(isupper(sentence[0])&&isupper(sentence[1])){expect=0;} else if(isupper(sen..