본문 바로가기

알고리즘 문제 풀이207

백준 - 바이러스(Java, Python) 본 알고리즘 풀이는 Routine Study에서 진행하고 있습니다. https://github.com/ROUTINE-STUDY/Algorithm 저를 포함한 구성원이 대부분 초보이므로, 원하시는분은 언제라도 들어오셔도 좋습니다. GitHub - ROUTINE-STUDY/Algorithm: 초보 알고리즘 스터디 / 누구나 참여 가능 초보 알고리즘 스터디 / 누구나 참여 가능 :runner:. Contribute to ROUTINE-STUDY/Algorithm development by creating an account on GitHub. github.com 문의는 댓글 바람. 문제 출처 :https://www.acmicpc.net/problem/2606 [문제 설명] 간단한 그래프 탐색 문제. 1번 노드.. 2022. 1. 23.
백준 - 연구소 본 알고리즘 풀이는 Routine Study에서 진행하고 있습니다. https://github.com/ROUTINE-STUDY/Algorithm 저를 포함한 구성원이 대부분 초보이므로, 원하시는분은 언제라도 들어오셔도 좋습니다. GitHub - ROUTINE-STUDY/Algorithm: 초보 알고리즘 스터디 / 누구나 참여 가능 초보 알고리즘 스터디 / 누구나 참여 가능 :runner:. Contribute to ROUTINE-STUDY/Algorithm development by creating an account on GitHub. github.com 문의는 댓글 바람. 문제 출처 :https://www.acmicpc.net/problem/14502 [문제 설명] 벽을 세개 추가하여 바이러스가 가장.. 2022. 1. 23.
백준 - 일곱 난쟁이(Java) 다시 풀기 본 알고리즘 풀이는 Routine Study에서 진행하고 있습니다. 저를 포함한 구성원이 대부분 초보이므로, 원하시는분은 언제라도 들어오셔도 좋습니다. 문의는 댓글 바람. 문제 출처 : https://www.acmicpc.net/problem/2309 [문제 설명] 완전탐색 문제입니다. 완전탐색을 처음 접했을 때 많이 헤멨던 문제라 다시 풀어보기로 했습니다. [접근 방법] 9명 중 2명은 난쟁이가 아니다. 따라서, 두명의 키를 뺐을 때, 키의 총합이 100이면 그 두사람이 난쟁이가 아니다. 조합이므로 복잡도는 9C2 -> 36회 연산됩니다. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader;.. 2022. 1. 22.
9575번: 백준 - 행운의 수(Java) 본 알고리즘 풀이는 Routine Study에서 진행하고 있습니다. 저를 포함한 구성원이 대부분 초보이므로, 원하시는분은 언제라도 들어오셔도 좋습니다. 문의는 댓글 바람. 문제 출처 : https://www.acmicpc.net/problem/9575 [문제 설명] 3개의 배열이 주어지고 각 배열에서 숫자를 하나씩 뽑아 더했을 때 합을 구한다. 그 합이 5와 8로만 이루어졌으면 이 숫자는 행운의 숫자다. 행운의 숫자의 총 개수를 구하시오. [접근 방법] 제약 조건 수열 크기는 50을 넘지 않고, 원소는 30,000보다 작거나 같은 양의 정수 1125,000 문제에선 중복된 숫자는 같은 걸로 처리함. 2. 중복을 처리할 수 있는 방법들 2.1 해시셋 2.2 배열을 이용하여 방문처리 만족하는 원소 개수(행운.. 2022. 1. 21.
백준 - 연결 요소의 개수(Java) 본 알고리즘 풀이는 Routine Study에서 진행하고 있습니다. 저를 포함한 구성원이 대부분 초보이므로, 원하시는분은 언제라도 들어오셔도 좋습니다. 문의는 댓글 바람. 문제 출처 :https://www.acmicpc.net/problem/11724 [문제 설명] 그래프가 총 몇개인지 구하시오. [접근 방법] 노드들을 모두 입력 받은 후, 탐색을 통하여 그래프 하나를 전부 순회하면 개수를 하나 추가하는 방법으로 풀었다. 그래프를 BFS로 모두 순회하므로 시간복잡도는 O(N+M). 공간복잡도도 인접행렬로 구현할 경우 O(N^2)이라, 연결리스트로 구현해서 O(N+M)가 된다. 결론 : 시간 복잡도 O(N+M) 공간복잡도 O(N+M) [내 답안 수정하기] import java.io.BufferedReade.. 2022. 1. 20.
백준 - 특정 거리의 도시 찾기 본 알고리즘 풀이는 Routine Study에서 진행하고 있습니다. 저를 포함한 구성원이 대부분 초보이므로, 원하시는분은 언제라도 들어오셔도 좋습니다. 문의는 댓글 바람. 문제 출처 : https://www.acmicpc.net/problem/18352 [문제 설명] 어느 도시로부터 특정 거리의 있는 도시들을 오름차순으로 출력하시오. [접근 방법] 시작 도시를 기준으로 BFS하여, 같은 층(같은 거리)에 있는 요소들을 반환하면 된다. 주의해야 할 점은 사이클(시작점과 끝점이 같은 경로)이 있으므로 방문 여부를 체크해줘야 한다는 것과 오름차순으로 결과를 반환해야 한다는 것. 리스트에 넣어서 퀵정렬을 통해 정렬한 후에 반환해줘도 되겠지만, 그것보다는 메모리를 추가적으로 쓰더라도 배열을 따로 만들어서 리턴해주.. 2022. 1. 20.