01 당장 좋은 것만 선택하는 그리디 02 아이디어를 코드로 바꾸는 구현 03 꼭 필요한 자료구조 탐색 알고리즘 DFS/BFS 04 기준에 따라 데이터를 정렬 05 범위를 반씩 좁혀가는 탐색 06 다이나믹 프로그래밍 07 가장 빠른 길 찾기 08 다양한 그래프 알고리즘 [문제] 슈퍼 게임 개발자 오렐리는 큰 고민에 빠졌다. 그녀가 만든 프랜즈 오천성이 대성공을 거뒀지만, 요즘 신규 사용자의 수가 급감한 것이다. 원인은 신규 사용자와 기존 사용자 사이에 스테이지 차이가 너무 큰 것이 문제였다. 이 문제를 어떻게 할까 고민 한 그녀는 동적으로 게임 시간을 늘려서 난이도를 조절하기로 했다. 역시 슈퍼 개발자라 대부분의 로직은 쉽게 구현했지만, 실패율을 구하는 부분에서 위기에 빠지고 말았다. 오렐리를 위해 실패..

01 당장 좋은 것만 선택하는 그리디 02 아이디어를 코드로 바꾸는 구현 03 꼭 필요한 자료구조 탐색 알고리즘 DFS/BFS 04 기준에 따라 데이터를 정렬 05 범위를 반씩 좁혀가는 탐색 06 다이나믹 프로그래밍 07 가장 빠른 길 찾기 08 다양한 그래프 알고리즘 [문제] 일직선 상의 마을에 여러 채의 집이 위치해 있다. 이중에서 특정 위치의 집에 특별히 한 개의 안테나를 설치하기로 결정했다. 효율성을 위해 안테나로부터 모든 집까지의 거리의 총 합이 최소가 되도록 설치하려고 한다. 이 때 안테나는 집이 위치한 곳에만 설치할 수 있고, 논리적으로 동일한 위치에 여러 개의 집이 존재하는 것이 가능하다. 집들의 위치 값이 주어질 때, 안테나를 설치할 위치를 선택하는 프로그램을 작성하시오. 예를 들어 N=..
01 당장 좋은 것만 선택하는 그리디 02 아이디어를 코드로 바꾸는 구현 03 꼭 필요한 자료구조 탐색 알고리즘 DFS/BFS 04 기준에 따라 데이터를 정렬 05 범위를 반씩 좁혀가는 탐색 06 다이나믹 프로그래밍 07 가장 빠른 길 찾기 08 다양한 그래프 알고리즘 [문제] 도현이네 반 학생 N명의 이름과 국어, 영어, 수학 점수가 주어진다. 이때, 다음과 같은 조건으로 학생의 성적을 정렬하는 프로그램을 작성하시오. 국어 점수가 감소하는 순서로 국어 점수가 같으면 영어 점수가 증가하는 순서로 국어 점수와 영어 점수가 같으면 수학 점수가 감소하는 순서로 모든 점수가 같으면 이름이 사전 순으로 증가하는 순서로 (단, 아스키 코드에서 대문자는 소문자보다 작으므로 사전순으로 앞에 온다.) [입력 조건] 첫째..