[Python] 튜플 정렬
파이썬에서는 튜플을 원소로 하는 리스트가 있을 때, 그 리스트를 정렬하면 기본적으로 각 튜플을 구성하는 원소의 순서에 맞게 정렬된다는 특징이 있다. 예를 들어 튜플이 3개의 원소로 구성된다면 모든 원소가 첫 번째 원소의 순서에 맞게 정렬되고, 첫번째 원소의 값이 같은 경우 두 번째 원소의 순서에 맞게 정렬되고, 거기에 두 번째 원소의 값까지 같은 경우 세 번째 원소의 순서에 맞게 정렬된다. 아래의 소스코드를 보자. 소스코드 a = [(5, 1, 5), (3, 5, 5), (3, 1, 9), (3, 1, 1)] a.sort() print(a) 결과 [(3, 1, 1), (3, 1, 9), (3, 5, 5), (5, 1, 5)] 또한 리스트의 원소를 정렬할 때는 sort() 함수의 key 속성에 값을 대입하..
[Algorithm] 특정 거리의 도시 찾기
문제는 다음의 링크에서 확인하자. https://www.acmicpc.net/problem/18352 18352번: 특정 거리의 도시 찾기 첫째 줄에 도시의 개수 N, 도로의 개수 M, 거리 정보 K, 출발 도시의 번호 X가 주어진다. (2 ≤ N ≤ 300,000, 1 ≤ M ≤ 1,000,000, 1 ≤ K ≤ 300,000, 1 ≤ X ≤ N) 둘째 줄부터 M개의 줄에 걸쳐서 두 개 www.acmicpc.net 이 문제를 해결하기 위해 다음과 같은 아이디어를 생각해보았다. 일반적으로 그래프에서 모든 간선의 비용이 동일할 때는 BFS를 이용하여 최단 거리를 찾을 수 있다. 다시 말해 이 문제는 '모든 도로의 거리는 1' 이라는 조건 덕분에 너비 우선 탐색을 이용하여 간단히 해결할 수 있다. 먼저 특정..