본문 바로가기

Python/Python 문제

(84)
Python 문제 28 #문제8 자연수가 들어있는 리스트가 주어질 때, 다음 규칙에 따라 새로운 리스트를 만들려고 합니다. * 주어진 리스트의 첫 번째 원소를 새로운 리스트의 첫 번째 원소에 넣습니다. * 주어진 리스트의 마지막 원소를 새로운 리스트의 두 번째 원소에 넣습니다. * 계속해서 주어진 리스트의 남아있는 원소중 가장 앞에있는 원소와 가장 뒤에있는 원소를 번갈아 가져와 새로운 리스트에 순서대로 넣습니다. * 주어진 리스트에 더이상 원소가 남아있지 않을 때까지 위 과정을 반복합니다. 자연수가 들어있는 리스트 arr가 매개변수로 주어질 때, 위 과정을 수행해서 만든 새로운 리스트를 return 하도록 solution 함수를 작성했습니다. 그러나, 코드 일부분이 잘못되어있기 때문에, 몇몇 입력에 대해서는 올바르게 동작하지 ..
Python 문제 27 #문제7 한국에는 다음과 같이 8가지 종류의 화폐가 있습니다. * 동전 : 10원, 50원, 100원, 500원 * 지폐 : 1,000원, 5,000원, 10,000원, 50,000원 손님에게 거슬러줘야 하는 금액이 주어질 때, 거슬러주는 동전과 지폐 개수의 합이 최소가 되도록 하려고 합니다. 예를 들어 거슬러줘야 할 금액이 2,760원 이라면, 1,000원짜리 2장, 500원짜리 1개, 100원짜리 2개, 50원짜리 1개, 10원짜리 1개를 거슬러줄 때 동전과 지폐 개수의 합이 최소가 됩니다. 손님에게 거슬러줘야 하는 금액 money가 매개변수로 주어질 때, 거슬러 주는 동전과 지폐 개수합의 최솟값을 return 하도록 solution 함수를 작성하려 합니다. 빈칸을 채워 전체 코드를 완성해주세요. -..
Python 문제 26 #문제6 로봇이 아래 그림과 같이 2차원 평면의 원점 (0, 0)에 서있습니다. 이 로봇은 x축 방향, 혹은 y축 방향으로만 움직일 수 있으며, 알파벳으로 명령을 내릴 수 있습니다. 명령을 내릴 때 사용하는 알파벳은 'L', 'R', 'U', 'D'의 4가지이며, 'L'은 x축 방향으로 -1만큼, 'R'은 x축 방향으로 +1만큼, 'U'는 y축 방향으로 +1만큼, 'D'는 y축 방향으로 -1 만큼 이동하라는 의미입니다. 로봇에게 내린 명령이 순서대로 들어있는 문자열 commands가 매개변수로 주어질 때, 주어진 명령을 모두 수행한 후의 로봇 위치를 return 하도록 solution 함수를 완성해주세요. --- #####매개변수 설명 로봇에게 내린 명령이 순서대로 들어있는 문자열 commands가 so..
Python 문제 25 #문제5 자연수가 들어있는 리스트가 있습니다. 이 리스트에서, 숫자가 연속해서 증가하는 가장 긴 구간의 길이를 구하려 합니다. 단, 바로 전 숫자와 현재 숫자가 같은 경우는 증가한 것으로 보지 않습니다. 예를 들어 리스트에 순서대로 [3, 1, 2, 4, 5, 1, 2, 2, 3, 4]가 들어있는 경우, [1, 2, 4, 5]가 들어있는 구간이 숫자가 연속해서 증가한 가장 긴 구간이며, 길이는 4입니다. 자연수가 들어있는 리스트 arr가 매개변수로 주어질 때, 숫자가 연속해서 증가하는 가장 긴 구간의 길이를 return 하도록 solution 함수를 완성해주세요. --- #####매개변수 설명 자연수가 들어있는 리스트 arr가 solution 함수의 매개변수로 주어집니다. * arr의 길이는 2 이상 2..
Python 문제 24 #문제4 자연수가 중복 없이 들어있는 리스트가 있습니다. 이 리스트에서 합이 K의 배수가 되도록 서로 다른 숫자 세개를 고르는 방법은 몇 가지인지 세려고 합니다. 자연수가 들어있는 리스트 arr가 매개변수로 주어질 때, 이 리스트에서 합이 K의 배수가 되도록 서로 다른 숫자 세개를 고르는 방법의 가짓수를 return 하도록 solution 함수를 완성해주세요. --- #####매개변수 설명 자연수가 들어있는 리스트 arr가 solution 함수의 매개변수로 주어집니다. * arr의 길이는 3 이상 100 이하입니다. * arr에는 1 이상 1,000 이하의 자연수가 중복 없이 들어있습니다. * K는 1 이상 10 이하의 자연수입니다. --- #####return 값 설명 리스트에서 합이 K의 배수가 되도..
Python 문제 23 #문제3 A 사이트에서 아래 조건에 맞는 게시글을 **최초**로 작성하는 이용자에게 경품을 제공하려 합니다. * 현재 작성되어있는 가장 마지막 게시글 이후에 작성된 게시글이어야 합니다. * 게시글 번호의 자릿수가 짝수여야 합니다. * 게시글 번호가 2n 자릿수 일때, 앞 n 자리의 각 자릿수의 합과 뒤 n 자리의 각 자릿수의 합이 같아야 합니다. 이 사이트의 게시글 번호는 마지막에 작성된 게시글 번호부터 1씩 증가합니다. 예를 들어, 가장 마지막 게시글의 번호가 235386이라면, 이후에 작성되는 게시글의 번호는 235387, 235388 ... 이 되며, 번호가 235387 이상인 게시글이 경품당첨의 대상이 됩니다. 당신은 경품을 받기위해 앞으로 게시글을 몇 개 더 작성해야 하는지 구하려 합니다. 이를..
Python 문제 22 #문제2 A 지하철역의 오늘 하루 지하철 도착 시각이 순서대로 들어있는 리스트가 있습니다. 현재 시간이 주어졌을 때, 지하철을 타기위해서는 최소 몇 분을 기다려야 하는지 구하려 합니다. 이를 위해 다음과 같이 프로그램 구조를 작성했습니다. ~~~ 1. 00:00을 기준으로 해서 현재 시각을 분 단위로 변환합니다. 2. 리스트를 순회하며 다음을 수행합니다. 2-1. 00:00을 기준으로, 각 지하철 도착 시각을 분 단위로 변환합니다. 2-2. 현재 시각과 지하철 도착 시각을 비교하여 최소 대기 시간을 구합니다. 3. 2번 단계에서 구한 최소 대기 시간을 return 합니다. ~~~ 오늘 하루 동안의 지하철 도착 시각이 순서대로 들어있는 리스트 subway_times와 현재시간 current_time이 매개..
Python 문제 21 #문제1 도서 대여점의 만화책과 소설책의 대여 요금이 다음과 같습니다. | 구분 | 대여 요금 | 추가 요금 | |--------|-----------------|--------------------| | 만화책 | 첫 2일 500원 | 이후 1일당 200원씩 추가 | | 소설책 | 첫 3일 1000원 | 이후 1일당 300원씩 추가 | 만화책과 소설책의 대여 요금을 계산하기 위해 아래 그림과 같이 Book 인터페이스와 ComicBook, Novel 클래스를 작성했습니다. * Book : * Book은 책의 인터페이스입니다.. * 책은 get_rental_price 함수를 구현해야 합니다. * get_rental_price 함수는 대여 기간을 매개변수로 받아 대여 요금을 계산합니다. * ComicBook..