문제상근이는 나무 M미터가 필요하다. 근처에 나무를 구입할 곳이 모두 망해버렸기 때문에, 정부에 벌목 허가를 요청했다. 정부는 상근이네 집 근처의 나무 한 줄에 대한 벌목 허가를 내주었고, 상근이는 새로 구입한 목재절단기를 이용해서 나무를 구할것이다.목재절단기는 다음과 같이 동작한다. 먼저, 상근이는 절단기에 높이 H를 지정해야 한다. 높이를 지정하면 톱날이 땅으로부터 H미터 위로 올라간다. 그 다음, 한 줄에 연속해있는 나무를 모두 절단해버린다. 따라서, 높이가 H보다 큰 나무는 H 위의 부분이 잘릴 것이고, 낮은 나무는 잘리지 않을 것이다. 예를 들어, 한 줄에 연속해있는 나무의 높이가 20, 15, 10, 17이라고 하자. 상근이가 높이를 15로 지정했다면, 나무를 자른 뒤의 높이는 15, 15, ..
분류 전체보기
문제오늘도 서준이는 깊이 우선 탐색(DFS) 수업 조교를 하고 있다. 아빠가 수업한 내용을 학생들이 잘 이해했는지 문제를 통해서 확인해보자.N개의 정점과 M개의 간선으로 구성된 무방향 그래프(undirected graph)가 주어진다. 정점 번호는 1번부터 N번이고 모든 간선의 가중치는 1이다. 정점 R에서 시작하여 깊이 우선 탐색으로 노드를 방문할 경우 노드의 방문 순서를 출력하자.깊이 우선 탐색 의사 코드는 다음과 같다. 인접 정점은 오름차순으로 방문한다.dfs(V, E, R) { # V : 정점 집합, E : 간선 집합, R : 시작 정점 visited[R] 입력첫째 줄에 정점의 수 N (5 ≤ N ≤ 100,000), 간선의 수 M (1 ≤ M ≤ 200,000), 시작 정점 R (1 ≤ ..
문제 설명n명이 입국심사를 위해 줄을 서서 기다리고 있습니다. 각 입국심사대에 있는 심사관마다 심사하는데 걸리는 시간은 다릅니다.처음에 모든 심사대는 비어있습니다. 한 심사대에서는 동시에 한 명만 심사를 할 수 있습니다. 가장 앞에 서 있는 사람은 비어 있는 심사대로 가서 심사를 받을 수 있습니다. 하지만 더 빨리 끝나는 심사대가 있으면 기다렸다가 그곳으로 가서 심사를 받을 수도 있습니다.모든 사람이 심사를 받는데 걸리는 시간을 최소로 하고 싶습니다.입국심사를 기다리는 사람 수 n, 각 심사관이 한 명을 심사하는데 걸리는 시간이 담긴 배열 times가 매개변수로 주어질 때, 모든 사람이 심사를 받는데 걸리는 시간의 최솟값을 return 하도록 solution 함수를 작성해주세요. 제한사항입국심사를 기다리..
문제승택이는 강을 건너려 한다.승택이는 수영을 못하기 때문에, 강에 놓인 징검다리를 밟고 건너갈 것이다.승택이는 수영은 못하지만 제자리뛰기는 정말 잘한다. 원하는 어느 곳으로든지 점프해서 바로 갈 수가 있다.승택이는 이제 강의 한쪽 변 앞에 서 있다.강엔 1번부터 시작해 2번, 3번, ... , N번 징검다리가 차례대로 놓여 있다.강의 폭이 넓은 탓에 징검다리의 수는 엄청나게 많다.이 징검다리를 모두 밟고 싶지는 않았던 승택이는 제자리뛰기 실력을 발휘해 적절한 개수의 징검다리만을 밟고 가기로 했다.물론 강 건너편으로 바로 점프하는 것도 가능하지만, 더 재미있게 강을 건너기 위해 승택이는 다음과 같은 규칙을 정했다.첫 징검다리는 점프해서 아무 것이나 밟을 수 있다. 이 점프가 첫 점프이다.두 번째 점프부터..
문제김형택은 지금 몰래 Spider Solitaire(스파이더 카드놀이)를 하고 있다. 형택이는 이 게임을 이길 때도 있었지만, 질 때도 있었다. 누군가의 시선이 느껴진 형택이는 게임을 중단하고 코딩을 하기 시작했다. 의심을 피했다고 생각한 형택이는 다시 게임을 켰다. 그 때 형택이는 잠시 코딩을 하는 사이에 자신의 게임 실력이 눈에 띄게 향상된 것을 알았다.이제 형택이는 앞으로의 모든 게임에서 지지 않는다. 하지만, 형택이는 게임 기록을 삭제 할 수 없기 때문에, 자신의 못하던 예전 기록이 현재 자신의 엄청난 실력을 증명하지 못한다고 생각했다.게임 기록은 다음과 같이 생겼다.게임 횟수 : X이긴 게임 : Y (Z%)Z는 형택이의 승률이고, 소수점은 버린다. 예를 들어, X=53, Y=47이라면, Z=8..
0 or 1을 예측하는 것 혼동 행렬 (Confusion Matrix)분류 문제에서 모델의 성능을 평가하는데 사용되는 표True Positive (TP): 실제로 참(True)인 값을 모델이 올바르게 참이라고 예측한 경우True Negative (TN): 실제로 거짓(False)인 값을 모델이 올바르게 거짓이라고 예측한 경우False Positive (FP): 실제로는 거짓(False)이지만 모델이 잘못해서 참(True)이라고 예측한 경우False Negative (FN): 실제로는 참(True)이지만 모델이 잘못해서 거짓(False)이라고 예측한 경우Recall / Precision참 (Positive)거짓 (Negative)참 (Positive)True Positive (TP)False Negati..
회귀 모델의 현실적인 목표는 정확한 연속값을 예측하는 것이 아닌 실제값과의 오차를 줄이는 것이다 오차 = 실제값 - 예측값Sum Squared Error (SSE)오차 제곱의 합Mean Squared Error (MSE)오차 제곱의 합 / NRoot MSE (RMSE)sqrt(MSE)Mean Absolute Error (MAE)오차 절대값의 합 / N Sum Squared Total (SST)실제 데이터와 평균값의 오차 (전체 오차)Sum Squared Regression (SSR)회귀식이 잡아낸 오차 (평균값과 회귀식의 오차)Sum Squared Error (SSE)회귀식이 잡아내지 못한 오차 (실제값과 회귀식의 오차) SST = SSE + SSR 결정 계수Coefficient of Determin..
회귀정답이 있는 데이터를 학습하여 입력과 정답 간의 연관성을 찾고 새로운 데이터의 결과를 예측하기 위한 학습지도 학습연속값을 예측알고리즘평가지표LinearRegressionmean_absolute_errorKNeighborsRegressormean_squared_errorDecisionTreeRegressorroot_mean_squared_errorRandomForestRegressorr2_score 분류분류되어 있는 데이터를 학습하여 분류 규칙을 찾고 새로운 데이터를 적절히 분류하기 위한 학습지도 학습범주값을 예측알고리즘평가지표DecisionTreeClassifieraccuracy_scoreKNeighborsClassifierrecall_scoreLogisticRegressionprecision_sco..