백준
-
24391번 귀찮은 해강이알고리즘 2022. 12. 30. 08:34
문제 설명 서로 이어져 있는 건물들이 있고 강의 시간표가 주어질 경우, 건물 이동 시 밖에 나와야하는 최소의 횟수를 구하는 문제이다. 내가 푼 방식 이 문제는,,,, 유니온 파인드 방법으로 하면 될 것 같다는 생각은 들었지만, 내 방식대로 풀고 싶어 시간을 조금 들였지만, 결국에는 유니온 파인드로 문제를 풀게 되었다... 그래프 연결된 건물들이 있고 연결되지 않은 건물로 이동할 경우의 횟수를 세는 것이다. 이것은 이어진 노드들끼리 그룹화되어 있는 상황에서 노드를 주어진 번호순으로 순회할 때 그룹을 이동하는 회수를 구한다고 생각하면 된다. 코드 우선 내 코드를 확인해보자 import sys input = sys.stdin.readline def find(class_room): if class_room ==..
-
12842번 튀김 소보로알고리즘 2022. 12. 27. 13:49
문제 설명 사람들마다 소보로를 먹는 속도가 정해져 있을 경우, 남아있는 소보로의 개수를 보고 마지막으로 소보로를 집어든 사람은 누구인지 찾는 문제입니다. 내가 푼 방식 규칙 찾기 사람들이 소보로를 먹는 시간이 정해져 있다. -> 이 정해진 시간을 통해 규칙을 찾아낼 수 있다는 생각이 들었습니다. 다음 사진은 문제의 예시를 시간의 흐름에 따라 1번, 2번, 3번 사람이 먹게 될 소보루 번호를 매겨본 것입니다. (1번은 1초에 한 개, 2번은 3초에 한 개, 3번은 5초에 한 개를 먹을 경우) (문제에서 동시에 소보루를 잡는다면 낮은 번호가 먼저 소보로를 집는다고 서술돼 있음) 먹은 소보루 개수가 1개일 경우, 1번이 마지막으로 소보루를 잡은 사람이 된다. 먹은 소보루 개수가 2개일 경우, 1번 다음 2번이..