백준 실버
전체 글 23
[백준 1463] 1로 만들기 (Python)
문제 링크 # https://www.acmicpc.net/problem/1463 문제 해설 # Idea # Dynamic Programming N에 대해 조건을 만족하는 경우에서 3으로 나누기, 2로 나누기, 1 …
문제 링크 # https://www.acmicpc.net/problem/1463 문제 해설 # Idea # Dynamic Programming N …
[백준 1697] 숨바꼭질 (Python)
문제 링크 # https://www.acmicpc.net/problem/1697 문제 해설 # Idea # BFS N에서 시작해 K에 도달할 때까지 x-1, x+1, x*2에 대한 최단거리를 탐색 두 점이 위치할 수 있는 범위 내에서 가까운 거리의 점부터 탐색을 수행 K에 대한 거리를 출력 N이 K보다 클 경우 x-1 외에는 이동수단이 없기 때문에 시간 단 …
문제 링크 # https://www.acmicpc.net/problem/1697 문제 해설 # Idea # BFS N에서 시작해 K에 도달할 때까지 x-1, x+1, x*2 …
[백준 20922] 겹치는 건 싫어 (Python)
문제 링크 # https://www.acmicpc.net/problem/20922 문제 해설 # Idea # Two Pointer 수열의 시작과 끝 지점에 대한 두 개의 포인터 지정 끝 지점에 대한 포인터를 확장하면서 탐색되는 원소의 수를 카운트 원소의 수가 K개와 같아지는 시점부터 시작 지점에 대한 포인터를 확장하여 범위 축소 최종적으로 두 포인터 간 거 …
문제 링크 # https://www.acmicpc.net/problem/20922 문제 해설 # Idea # Two Pointer 수열의 시작과 끝 지점에 대한 두 개의 포인터 지 …
[백준 21318] 피아노 체조 (Python)
문제 링크 # https://www.acmicpc.net/problem/21318 문제 해설 # Idea # Prefix Sum 실수한 곡에 대한 누적합을 구하고 인덱싱을 통해 특정 구간에 대한 누적합 출력 마지막 곡은 항상 성공하기 때문에 y에 대한 누적합과 y-1에 대한 누적합이 다르면 1 감소 Time Complexity # Prefix Sum: …
문제 링크 # https://www.acmicpc.net/problem/21318 문제 해설 # Idea # Prefix Sum 실수한 곡에 대한 누적합을 구하고 인덱싱을 통해 특 …
[백준 16987] 계란으로 계란치기 (Python)
문제 링크 # https://www.acmicpc.net/problem/16987 문제 해설 # Idea # Backtracking 0번째 계란부터 마지막 계란까지의 모든 경우의 수를 탐색 시간 단축을 위해 현재 계란이 깨진 경우 또는 나머지 모든 계란이 깨진 경우를 예외로 처리 한 번에 두 개 이상의 계란을 치는 경우를 방지하기 위해 계란을 친 후 원상복 …
문제 링크 # https://www.acmicpc.net/problem/16987 문제 해설 # Idea # Backtracking 0번째 계란부터 마지막 계란까지의 모든 경우의 …
[백준 16918] 봄버맨 (Python)
문제 링크 # https://www.acmicpc.net/problem/16918 문제 해설 # Idea # Simulation (or BFS) 초기에 빈 칸(.)을 0, 폭탄이 있는 칸(O)을 1로 설정 처음에 폭탄이 있는 칸의 상태를 우선 1 증가시키고, 이후 모든 칸의 상태를 1씩 증가시키는 과정 반복 매번 각 칸의 상태를 점검하면서 3 …
문제 링크 # https://www.acmicpc.net/problem/16918 문제 해설 # Idea # Simulation (or BFS) 초기에 빈 칸(.)을 0, 폭탄이 …
[백준 2302] 극장 좌석 (Python)
문제 링크 # https://www.acmicpc.net/problem/2302 문제 해설 # Idea # Dynamic Programming 자리를 옮길 수 있는 연속되는 좌석의 수는 피보나치 수열을 따름 (S[i] = F[i+1]) VIP …
문제 링크 # https://www.acmicpc.net/problem/2302 문제 해설 # Idea # Dynamic Programming …
[백준 18352] 특정 거리의 도시 찾기 (Python)
문제 링크 # https://www.acmicpc.net/problem/18352 문제 해설 # Idea # BFS 시작 노드 X부터 연결된 노드를 순차적으로 방문하면서 X로부터 떨어진 거리를 기록 거리가 K와 같은 노드를 출력하고, 해당하는 노드가 없을 경우 -1을 출력 거리가 K를 넘어가지 않는 노드에 대해서만 탐색하여 시간 단축 Time …
문제 링크 # https://www.acmicpc.net/problem/18352 문제 해설 # Idea # BFS 시작 노드 X부터 연결된 노드를 순차적으로 방문하면서 X로부터 …
[백준 1495] 기타리스트 (Python)
문제 링크 # https://www.acmicpc.net/problem/1495 문제 해설 # Idea # Dynamic Programming P[i] = max(P[i-1]+V[i-1],P[i-1]-V[i-1]), 0 <= P[i] <= M 모든 P[i-1]가 P[i+1] …
문제 링크 # https://www.acmicpc.net/problem/1495 문제 해설 # Idea # Dynamic Programming P[i] = …
[백준 2805] 나무 자르기 (PyPy3)
문제 링크 # https://www.acmicpc.net/problem/2805 개요 # 이분 탐색으로 해결할 수 있는 문제이다. Python3을 사용하면 시간초과가 발생하므로 PyPy3를 사용한다. 문제 조건 # 일정 높이에 대해 모든 나무를 잘랐을 때, 조건을 만족하는 절단기의 최대 높이(H)를 구하는 문제이다. …
문제 링크 # https://www.acmicpc.net/problem/2805 개요 # 이분 탐색으로 해결할 수 있는 문제이다. Python3 …