www.acmicpc.net/problem/1325 max_value: # 현재 연결된 컴퓨터 수가 기존 최대 연결 컴퓨터 수보다 큰 경우 max_value = c # 현재 연결된 컴퓨터 수로 최대값 수정 result = [i] # 해당 컴퓨터 번호도 수정 elif c == max_value: # 현재 연결된 컴퓨터 수가 기존 최대 연결 컴퓨터 수와 같은 경우 result.append(i) # 해당 컴퓨터 번호 추가 for r in result: print(r, end=" ") 자바 코드는 다음과 같습니다. 파이썬과 같은 로직이지만, 시간 초과 문제를 해결하지 못하였습니다... ㅠㅠ import java.io.BufferedReader; import java.io.InputStreamReader; imp..
www.acmicpc.net/problem/2606 2606번: 바이러스 첫째 줄에는 컴퓨터의 수가 주어진다. 컴퓨터의 수는 100 이하이고 각 컴퓨터에는 1번 부터 차례대로 번호가 매겨진다. 둘째 줄에는 네트워크 상에서 직접 연결되어 있는 컴퓨터 쌍의 수가 주어 www.acmicpc.net 문제는 위와 같으며, 이 문제는 BFS 를 구현할 수 있다면 쉽게 해결할 수 있는 문제입니다. 주어진 컴퓨터들의 연결 관계를 dictionary (자바에서는 Map) 형태로 구성한 뒤 BFS 탐색을 통해 방문할 수 있는 모든 컴퓨터의 수를 구한 뒤, -1 해주면 정답이 됩니다. 파이썬 코드는 다음과 같습니다. from sys import stdin def bfs(node_list, start): need_visit ..
www.acmicpc.net/problem/1697 1697번: 숨바꼭질 수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 www.acmicpc.net 문제는 위와 같으며 현재 위치에서 갈 수 있는 위치(+1, -1, *2)를 순차적으로 방문(BFS 탐색)하면 문제를 해결할 수 있습니다. 수빈이의 위치가 5이고 동생의 위치가 12라고 할 때 갈 수 있는 위치를 모두 탐색하며 이전에 방문하지 않은 새로운 위치를 방문한 경우 이전까지 걸린 시간 + 1을 하여 해당 위치에 도달한 시간을 구한 뒤 동생의 위치와 현재 위치가 같아지는 경우 해..
www.acmicpc.net/problem/1260 1260번: DFS와 BFS 첫째 줄에 정점의 개수 N(1 ≤ N ≤ 1,000), 간선의 개수 M(1 ≤ M ≤ 10,000), 탐색을 시작할 정점의 번호 V가 주어진다. 다음 M개의 줄에는 간선이 연결하는 두 정점의 번호가 주어진다. 어떤 두 정점 사 www.acmicpc.net 문제는 위와 같으며 DFS 와 BFS 를 구현할 수 있다면 간단하게 해결할 수 있습니다. 여기서 주의할 점은 "방문할 수 있는 정점이 여러 개인 경우에는 정점 번호가 작은 것을 먼저 방문한다"는 것입니다. 먼저 DFS 는 방문이 필요한 노드를 담을 stack 과 이미 방문한 노드를 담을 queue 가 있으면 구현할 수 있고, BFS 는 방문이 필요한 노드를 담을 queue ..
- Total
- Today
- Yesterday
- 조합
- 순열
- Combination
- permutation
- Dynamic Programming
- sort
- SWIFT
- java
- programmers
- ionic
- Baekjoon
- search
- 프로그래머스
- Algorithm
- CodeCommit
- array
- 수학
- string
- ECR
- DFS
- CodePipeline
- CodeDeploy
- spring
- BFS
- 소수
- EC2
- cloudfront
- 에라토스테네스의 체
- AWS
- map
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |