목록알고리즘 (127)
500error
문제 A 지하철역의 오늘 하루 지하철 도착 시각이 순서대로 들어있는 배열이 있습니다. 현재 시간이 주어졌을 때, 지하철을 타기위해서는 최소 몇 분을 기다려야 하는지 구하려 합니다. 이를 위해 다음과 같이 프로그램 구조를 작성했습니다. 1. 00:00을 기준으로 해서 현재 시각을 분 단위로 변환합니다. 2. 배열을 순회하며 다음을 수행합니다. 2-1. 00:00을 기준으로, 각 지하철 도착 시각을 분 단위로 변환합니다. 2-2. 현재 시각과 지하철 도착 시각을 비교하여 최소 대기 시간을 구합니다. 3. 2번 단계에서 구한 최소 대기 시간을 return 합니다. 오늘 하루 동안의 지하철 도착 시각이 순서대로 들어있는 배열 subway_times와 subway_times의 길이 subway_times_len,..

문제 도서 대여점의 만화책과 소설책의 대여 요금이 다음과 같습니다. 구분 대여 요금 추가 요금 만화책 첫 2일 500원 이후 1일당 200원씩 추가 소설책 첫 3일 1000원 이후 1일당 300원씩 추가 만화책과 소설책의 대여 요금을 계산하기 위해 아래 그림과 같이 Book 인터페이스와 ComicBook, Novel 클래스를 작성했습니다. * Book : * Book은 책의 인터페이스입니다.. * 책은 get_rental_price 함수를 구현해야 합니다. * get_rental_price 함수는 대여 기간을 매개변수로 받아 대여 요금을 계산합니다. * ComicBook : * ComicBook은 만화책을 나타내는 클래스이며, Book 인터페이스를 구현합니다. * get_rental_price 함수는 대..
문제 지난 연속된 n일 동안의 주식 가격이 순서대로 들어있는 배열이 있습니다. 이때, 다음 규칙에 따라 주식을 사고 팔았을 때의 최대 수익을 구하려 합니다. n일 동안 주식을 단 한 번 살 수 있습니다. n일 동안 주식을 단 한 번 팔 수 있습니다. 주식을 산 날에 바로 팔 수는 없으며, 최소 하루가 지나야 팔 수 있습니다. 적어도 한 번은 주식을 사야하며, 한 번은 팔아야 합니다. 주식을 팔 때는 반드시 이전에 주식을 샀어야 하며, 최대 수익은 양수가 아닐 수도 있습니다. 연속된 n 일 동안의 주식 가격이 순서대로 들어있는 배열 prices와 배열의 길이 prices_len이 매개변수로 주어질 때, 주식을 규칙에 맞게 한 번만 사고팔았을 때 얻을 수 있는 최대 수익을 return 하도록 solution..
문제 두 학생 A와 B는 계단 게임을 하였습니다. 계단 게임의 규칙은 아래와 같습니다. 1. 계단 제일 아래에서 게임을 시작합니다. (0번째 칸) 2. 가위바위보를 합니다. 3. 이기면 계단 세 칸을 올라가고, 지면 한 칸을 내려가고, 비기면 제자리에 있습니다. 4. 계단 제일 아래에서 지면 제자리에 있습니다. 5. 2~4 과정을 열 번 반복합니다. A와 B가 계단 게임을 완료한 후에, A가 계단 위 몇 번째 칸에 있는지 파악하려고 합니다. A와 B가 낸 가위바위보 기록이 순서대로 들어있는 배열 recordA와 recordA의 길이 recorrdA_len, recordB, recordB의 길이 recordB_len이 매개변수로 주어질 때, 게임을 마친 후의 A의 위치를 return 하도록 solution..