별 찍기 시리즈 별 찍기 시리즈 처음 풀었던 알고리즘? 프로그램? 문제라서 그런지 왠지 정이 가는 별찍기 문제다. 이중 반복문을 이해하는데 별 찍기만한 문제도 없다고 생각이 된다. 저 문제집에서 뒷 부분은 재귀 or 귀찮은 조건문 문제긴 하지만 나름 재밌다. 학원에서 가르치면서 딱 반복문 끝내면 꼭 별찍기 1~7을 풀게 했는데 이걸 잘하면 보통 ...
차원의 나무 여행(32755, G4, c++)
차원의 나무 여행 차원의 나무 문제 정점의 개수가 N, 간선의 개수가 N-1인 트리가 주어진다. 간선으로 직접 연결되지 않은 정점으로 이동하는 것을 워프라고 한다. 각 정점을 최대 한 번만 방문할 수 있을 때, 가능한 워프의 최대 횟수를 구하여라. 시작 정점은 임의로 고를 수 있으며, 시작 정점을 고르는 것도 워프이다. 입력 첫 번째 줄에 N이 ...
Consonants (Large) (12318, G5, c++)
Consonants (Large) Consonants (Large) 마라톤에 나와 푼 영어 문제라 눈에 안 들어온다.. 코드 잼 2013년 문젠데 이게 왜 골드 5지.. 생각하기 어려운 애드 훅 같은데 문제는 이런 입력에서 예제 입력 1 4 quartz 3 straight 3 gcj 2 tsetse 2 예제 출력 1 Case #1: 4 Ca...
풍선 (4716, G1, c++)
풍선 풍선 문제 전대프연 대회에서 문제를 푼 팀은 풍선을 받게 된다. 풍선은 사람이 직접 달아주기 때문에 자원 봉사자가 필요하다. 풍선은 방 A와 방 B에 보관되어 있다. 대회에 참가한 팀의 수는 총 N개이고, 앉아있는 자리는 서로 다르다. 어떤 팀은 방 A에 가깝고, 어떤 팀은 B에 더 가깝다. 각 팀에게 달아줘야 하는 풍선의 수와 방 A와 ...
호반우가 학교에 지각한 이유 2 (30469, S1, c++)
호반우가 학교에 지각한 이유 2 호반우가 학교에 지각한 이유 2 문제 이세계를 모험할 때는 무기가 필요한 법이기에 호반우는 현재 신에게 받은 소수소수검의 사용법을 익히고 있다. 소수소수검을 사용하기 위해서는 검이 제시하는 두 자릿수의 소수 A,B와 양의 정수 N을 이용해 소수소수를 만들어야 한다. 소수소수란 해당 수 자체가 소수일 필요는 없지만...
곱셈 (1629, S1, c++)
곱셈 곱셈 문제 자연수 A를 B번 곱한 수를 알고 싶다. 단 구하려는 수가 매우 커질 수 있으므로 이를 C로 나눈 나머지를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 A, B, C가 빈 칸을 사이에 두고 순서대로 주어진다. A, B, C는 모두 2,147,483,647 이하의 자연수이다. 출력 첫째 줄에 A를 B번 곱한 수를 C로 나눈 나...
좌표 압축(18870, S2, c++)
좌표 압축 좌표 압축 문제 수직선 위에 N개의 좌표 X1, X2, …, XN이 있다. 이 좌표에 좌표 압축을 적용하려고 한다. Xi를 좌표 압축한 결과 X’i의 값은 Xi > Xj를 만족하는 서로 다른 좌표 Xj의 개수와 같아야 한다. X1, X2, …, XN에 좌표 압축을 적용한 결과 X’1, X’2, …, X’N를 출력해보자. 입력 ...
회의실 배정(1931, G5, c++)
회의실 배정 회의실 배정 문제 한 개의 회의실이 있는데 이를 사용하고자 하는 N개의 회의에 대하여 회의실 사용표를 만들려고 한다. 각 회의 I에 대해 시작시간과 끝나는 시간이 주어져 있고 각 회의가 겹치지 않게 하면서 회의실을 사용할 수 있는 회의의 최대 개수를 찾아보자. 단, 회의는 한번 시작하면 중간에 중단될 수 없으며 한 회의가 끝나는 것과...
평범한 배낭(12865, G5, c++)
평범한 배낭 평범한 배낭 문제 이 문제는 아주 평범한 배낭에 관한 문제이다. 한 달 후면 국가의 부름을 받게 되는 준서는 여행을 가려고 한다. 세상과의 단절을 슬퍼하며 최대한 즐기기 위한 여행이기 때문에, 가지고 다닐 배낭 또한 최대한 가치 있게 싸려고 한다. 준서가 여행에 필요하다고 생각하는 N개의 물건이 있다. 각 물건은 무게 W와 가치...
1. 시간복잡도
시간복잡도 시간 복잡도란 특정한 크기의 입력에 대해 알고리즘의 수행 시간을 평가한다. 알고리즘 문제를 풀다보면 입력의 크기에 따라 시간을 어느정도 계산할 필요가 생긴다. 입력 데이터가 최선의 경우, 평균적인 경우, 최악의 경우에 따라 시간 복잡도를 나누게 되고 문제에서는 보통 최악의 경우로 알고리즘의 성능을 파악한다. 최선의 경우는 빅 오메가 표...