목표 : N개의 시간안에 T소요시간을 가지는 M개의 과목들을 수강해 얻을 수 있는 최대 중요도(I)를 구하기조건 : 1 <= N <= 10000, 1 <= M <= 1000, 1 ≤ I ≤ 100000, 1 ≤ T ≤ 10000과목을 쪼개서 들을
목표 : 유섭이가 0번 노드에서 N-1까지 최단거리로 갈 수 있는 비용을 구하자. 유섭이는 백도어를 하러가는 것이기 때문에 와드가 있는 지역은 갈 수 없다. 유섭이가 갈 수 없다면 -1을 출력한다.조건 : 1 <= N <= 100000, 1 <= M &
목표 : 파이프를 배치해 N\*N칸으로 이동하자. 파이프는 가로, 세로, 대각선 3종류가 있다. 조건 : 3 <= N <= 16BFS를 통해 문제를 해결했다. 가로 파이프에서는 가로, 대각선, 세로 파이프에서는 세로, 대각선, 대각선 파이프에서는 모든 파이프
BOJ 16234 목표 : 조건에 맞게 인구이동이 몇 번 일어나는지 출력한다. 각 칸에서 상하좌우로 인접한 칸의 크기가 L이상 R이하라면 연합이 되고 인구 이동을 한다. 이때 각 나라의 인구 수는 (연합 국가들의 인구 수 총합 / 연합 국가 수)가 된다. 조건 : 1
목표 : N\*N형태의 지도에서 치킨집의 위치를 (cx,cy) 집의 위치를 (x,y)라고 했을 때 치킨집 중에서 |cx-x| + |cy-y| 거리가 최소인 값을 치킨 거리라고 한다. 각각의 집에서 치킨 거리의 합을 도시의 치킨 거리라고 한다. 최대 M개의 치킨 집만 남
목표 : 트리를 입력받아 T번동안 정점 M를 루트로 하는 서브트리에 속한 정점의 수를 출력한다.조건 : 1 <= 정점의 수(N) <= 100000, 간선의 수 = N-1, 1 <= T <= 100000매번 쿼리때 마다 트리를 순회할 경우 (10^5
목표 : 톱니바퀴를 K번 회전시킨 후 점수를 구하자.조건 : 1 <= K <= 100, 톱니바퀴는 8개의 톱니로 구성되어있다.전형적인 구현문제이다. 회전하는 톱니바퀴에 인접한 톱니바퀴의 좌우가 맞물릴 때 서로 다른 극이라면 해당 톱니바퀴도 반대방향으로 회전한
목표 : 2차원 세계에 블록이 있다. 비가 오면 블록 사이에 고인 빗물을 구하자.조건 : 2차원 세계의 세로 길이 H과 2차원 세계의 가로 길이 W가 주어진다. (1 ≤ H, W ≤ 500)이 문제는 두 가지 방법으로 해결할 수 있다. 반복문을 활용한 방법과 포인터를
목표 : 로봇 청소기를 이동시킬 때 청소할 수 있는 영역의 수를 구하자.조건 : 1 <= N,M<= 50, 현재 위치를 청소하고 왼쪽 방향으로 돌면서 청소할 영역을 탐색하고 해당 영역이 없으면 후진한다. 이때 후진할 영역이 벽이면 청소를 종료한다.벽과 청소한
목표 : 영훈이는 장난꾸러기라서 희현이의 비밀번호 중 1은 6으로, 6은 1로 바꾸거나 2는 7으로 7은 2로 바꿔버렸다. 이를 해결하기 위해 희현이는 비밀번호 수열의 숫자 중 1과 6을 모두 1로, 2와 7을 모두 2으로 바꾼 숫자와 1과 6을 모두 6으로 2과 7을