| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- 코딩테스트
- 다익스트라
- 구현
- 자료구조
- Baekjoon
- RDS
- AWS
- 자바
- BFS
- sshtunneling
- implementation
- Tunneling
- 알고리즘
- ChatGPT
- Dijkstra
- argocd
- 투포인터
- spring
- helm
- Docker
- 조합
- Helm Chart
- Kubernetes
- 백준
- dp
- 생성형AI
- EC2
- 프로그래머스
- k8s
- spring cloud config
- Today
- Total
목록Algorithm (46)
처누
https://www.acmicpc.net/problem/17130문제 : 골드 4토끼가 정보섬에 올라왔다!정보섬은 N행 M열의 격자로 나타낼 수 있으며, 어째서인지 여기저기에 당근이 떨어져 있다. 방금 토끼 한 마리가 정보섬 정문으로 들어왔다. 토끼의 왼쪽에선 사나운 늑대가 쫓아오고 있어서, 토끼는 →, ↘, ↗ 방향으로만 이동한다. 토끼는 나가는 길에 최대한 많은 당근을 줍고싶다. 정문은 늑대 때문에 위험하므로 쪽문으로 나가야 하며, 토끼가 당근을 줍기 위해서는 그 당근이 있는 위치를 지나야 한다. 토끼가 어떤 쪽문에 도착했을때 반드시 그 문으로 탈출할 필요는 없으며, 더 움직여서 다른 쪽문으로 탈출해도 된다. 토끼는 얼마나 많은 당근을 주워갈 수 있을까?토끼의 이동을 명확하게 정의하면 다음과 같다...
https://www.acmicpc.net/problem/15961문제 : 골드 4 회전 초밥 음식점에는 회전하는 벨트 위에 여러 가지 종류의 초밥이 접시에 담겨 놓여 있고, 손님은 이 중에서 자기가 좋아하는 초밥을 골라서 먹는다. 초밥의 종류를 번호로 표현할 때, 다음 그림은 회전 초밥 음식점의 벨트 상태의 예를 보여주고 있다. 벨트 위에는 같은 종류의 초밥이 둘 이상 있을 수 있다. 새로 문을 연 회전 초밥 음식점이 불경기로 영업이 어려워서, 다음과 같이 두 가지 행사를 통해서 매상을 올리고자 한다.원래 회전 초밥은 손님이 마음대로 초밥을 고르고, 먹은 초밥만큼 식대를 계산하지만, 벨트의 임의의 한 위치부터 k개의 접시를 연속해서 먹을 경우 할인된 정액 가격으로 제공한다. 각 고객에게 초밥의 종류..
https://www.acmicpc.net/problem/32931문제 : 실버 12 X N 크기의 격자가 있다. 격자의 각 칸에는 수가 적힌 카드가 하나씩 있다. 맨 왼쪽 위에는 자석이 있고 당신은 이 자석을 상하좌우로 한 칸씩 움직여 맨 오른쪽 아래로 이동시키려고 한다.자석이 카드 위를 지나면 카드는 자석에 달라붙게 되며, 한 번 붙은 카드는 자석에서 다시 떨어지지 않는다. 자석을 맨 오른쪽 아래까지 이동시켰을 때 자석에 붙은 카드에 적힌 수의 합의 최댓값을 구해보자. 입력첫 번째 줄에 격자의 열의 개수를 나타내는 수인 N이 주어진다. (2 다음 두 줄에 걸쳐 카드에 적힌 수가 공백으로 구분되어 주어진다. i+1번째 줄의 j번째 수 a_ij는 i번째 행의 j번째 열에 있는 카드에 적힌 수를 나타낸다...
https://www.acmicpc.net/problem/15787문제 : 실버 2N개의 기차가 어둠을 헤치고 은하수를 건너려고 한다.기차는 20개의 일렬로 된 좌석이 있고, 한 개의 좌석에는 한 명의 사람이 탈 수 있다. 기차의 번호를 1번부터 N번으로 매길 때, 어떠한 기차에 대하여 M개의 명령이 주어진다.명령의 종류는 4가지로 다음과 같다.1 i x : i번째 기차에(1 ≤ i ≤ N) x번째 좌석에(1 ≤ x ≤ 20) 사람을 태워라. 이미 사람이 타있다면 , 아무런 행동을 하지 않는다.2 i x : i번째 기차에 x번째 좌석에 앉은 사람은 하차한다. 만약 아무도 그자리에 앉아있지 않았다면, 아무런 행동을 하지 않는다.3 i : i번째 기차에 앉아있는 승객들이 모두 한칸씩 뒤로간다. k번째 앉은 ..
https://www.acmicpc.net/problem/24447문제 : 실버 2오늘도 서준이는 너비 우선 탐색(BFS) 수업 조교를 하고 있다. 아빠가 수업한 내용을 학생들이 잘 이해했는지 문제를 통해서 확인해보자.N개의 정점과 M개의 간선으로 구성된 무방향 그래프(undirected graph)가 주어진다. 정점 번호는 1번부터 N번이고 모든 간선의 가중치는 1이다. 정점 R에서 시작하여 너비 우선 탐색으로 만들어 지는 트리를 너비 우선 탐색 트리라고 하자. 너비 우선 탐색 트리에 있는 i번 노드의 깊이(depth)를 di라고 하자. 시작 정점 R의 깊이는 0이고 방문 되지 않는 노드의 깊이는 -1이다. 정점 R에서 시작하여 너비 우선 탐색으로 노드를 방문할 경우 i번 노드의 방문 순서를 ti라고 ..
https://www.acmicpc.net/problem/2251문제 : 골드 4각각 부피가 A, B, C(1≤A, B, C≤200) 리터인 세 개의 물통이 있다. 처음에는 앞의 두 물통은 비어 있고, 세 번째 물통은 가득(C 리터) 차 있다. 이제 어떤 물통에 들어있는 물을 다른 물통으로 쏟아 부을 수 있는데, 이때에는 한 물통이 비거나, 다른 한 물통이 가득 찰 때까지 물을 부을 수 있다. 이 과정에서 손실되는 물은 없다고 가정한다.이와 같은 과정을 거치다보면 세 번째 물통(용량이 C인)에 담겨있는 물의 양이 변할 수도 있다. 첫 번째 물통(용량이 A인)이 비어 있을 때, 세 번째 물통(용량이 C인)에 담겨있을 수 있는 물의 양을 모두 구해내는 프로그램을 작성하시오. 풀이과정해당 문제는 물을 옮기는 ..
https://www.acmicpc.net/problem/2090문제 : 실버 4N개의 수 A[1], …, A[N]의 조화평균은 1/(1/A[1] + 1/A[2] + … + 1/A[N]) 으로 정의된다. 즉, 각각의 수들을 뒤집어서(분모와 분자) 모두 더한 뒤, 그 값을 다시 뒤집는 것이다. 예를 들어 1, 2, 4의 조화평균을 구하면 4/7이 된다.N개의 자연수 A[1], …, A[N]이 주어졌을 때, 그 조화평균을 출력하는 프로그램을 작성하시오. 풀이과정해당 문제는 최대공약수(GCD)와 최소공배수(LCM)을 구하는 방법만 알고있다면 쉽게 풀 수 있다. 유클리드 호제법을 통해 최대공약수를 구할 수 있고, 최소공배수는 (두 수의 곱) / (두 수의 최대공약수)를 통해 구할 수 있다. 예를 들어 60 48..
https://www.acmicpc.net/problem/10836문제 : 골드 3 크기가 M×M인 격자 형태의 벌집이 있다. 이 벌집의 각 칸에는 여왕벌이 될 애벌레들이 한 마리씩 자라고 있다. 격자칸의 좌표계를 다음과 같이 설정한다. 제일 왼쪽 위 칸의 좌표는 (0,0)이다. 그 아래쪽 칸들의 좌표는 순서대로 (1,0), (2,0), ...등이다. 좌표가 (i,0)인 칸의 오른쪽 칸들의 좌표는 순서대로 (i, 1), (i,2), ... 등이다. 애벌레들은 매일 에너지를 모아서 정오(낮 12시) 에 한번 자라는데, 여기에 걸리는 시간은 매우 짧아서 무시할 수 있다. 첫날 아침 모든 애벌레들의 크기는 1이고, 이러한 과정을 N일 동안 반복한다. 각 애벌레가 자라서 크기가 커지는 정도는 하루에 +0, +1..
https://www.acmicpc.net/problem/28279문제 : 실버 4정수를 저장하는 덱을 구현한 다음, 입력으로 주어지는 명령을 처리하는 프로그램을 작성하시오.명령은 총 여덟 가지이다.1 X: 정수 X를 덱의 앞에 넣는다. (1 ≤ X ≤ 100,000)2 X: 정수 X를 덱의 뒤에 넣는다. (1 ≤ X ≤ 100,000)3: 덱에 정수가 있다면 맨 앞의 정수를 빼고 출력한다. 없다면 -1을 대신 출력한다.4: 덱에 정수가 있다면 맨 뒤의 정수를 빼고 출력한다. 없다면 -1을 대신 출력한다.5: 덱에 들어있는 정수의 개수를 출력한다.6: 덱이 비어있으면 1, 아니면 0을 출력한다.7: 덱에 정수가 있다면 맨 앞의 정수를 출력한다. 없다면 -1을 대신 출력한다.8: 덱에 정수가 있다면 맨 뒤..
https://www.acmicpc.net/problem/22860문제 : 골드 3이름이 main 폴더 안에 여러가지 파일과 폴더가 존재한다.main ├─ FolderA │ ├─ File1 │ └─ File2 └─ FolderB ├─ FolderC ├─ File1 └─ File3 위 구조는 main 폴더의 하위 구조를 계층적으로 표시한 것이다. FolderA, FolderB, FolderC는 폴더이고 File1, File2, File3은 파일이다. 파일 이름이 같은 경우는 동일한 파일이다.한 폴더 안에는 같은 이름의 파일이 두 개 이상 존재할 수 없다.main 하위 디렉토리에 같은 이름의 폴더가 두 개 이상 존재할 수 없다.폴더 정리를 하기 위해 main 폴더 ..