본문 바로가기

COS PRO 1급57

[COS PRO 1급 #2-10] 0들을 0으로 만들기 문제설명 0과 1로만 이루어진 문자열에서 연속해서 붙어있는 0들을 하나의 0으로 줄이려 합니다. 예를 들어 "101100011100" 이란 문자열은 "101101110"으로 만들면 됩니다. 0과 1로만 이루어진 문자열 s가 매개변수로 주어질 때, 연속해서 붙어있는 0들을 하나의 0으로 줄인 문자열을 return 하도록 solution 함수를 작성했습니다. 그러나, 코드 일부분이 잘못되어있기 때문에, 몇몇 입력에 대해서는 올바르게 동작하지 않습니다. 주어진 코드에서 _**한 줄**_만 변경해서 모든 입력에 대해 올바르게 동작하도록 수정하세요. 매개변수 설명 0과 1로만 이루어진 문자열 s가 solution 함수의 매개변수로 주어집니다. * s의 길이는 1 이상 1,000 이하입니다. return 값 설명 .. 2023. 2. 21.
[COS PRO 1급 #2-9] 비밀번호 검사 문제설명 주어진 비밀번호가 안전한지 아닌지 판단하려합니다. 비밀번호의 안전 여부는 다음 규칙으로 판단합니다. * 연속된 3자리 이상의 알파벳 혹은 숫자를 사용할 수 없습니다. (abc, cba, 012, 987 등) 비밀번호에 사용할 문자열 password가 매개변수로 주어질 때, 주어진 문자열이 위 규칙에 맞으면 true를, 맞지 않으면 false를 return 하도록 solution 함수를 작성했습니다. 그러나, 코드 일부분이 잘못되어있기 때문에, 몇몇 입력에 대해서는 올바르게 동작하지 않습니다. 주어진 코드에서 _**한 줄**_만 변경해서 모든 입력에 대해 올바르게 동작하도록 수정하세요. 매개변수 설명 비밀번호에 사용할 문자열 password가 solution 함수의 매개변수로 주어집니다. * pa.. 2023. 2. 21.
[COS PRO 1급 #2-8] 거스름돈 구하기 문제설명 자연수가 들어있는 리스트가 주어질 때, 다음 규칙에 따라 새로운 리스트를 만들려고 합니다. * 주어진 리스트의 첫 번째 원소를 새로운 리스트의 첫 번째 원소에 넣습니다. * 주어진 리스트의 마지막 원소를 새로운 리스트의 두 번째 원소에 넣습니다. * 계속해서 주어진 리스트의 남아있는 원소중 가장 앞에있는 원소와 가장 뒤에있는 원소를 번갈아 가져와 새로운 리스트에 순서대로 넣습니다. * 주어진 리스트에 더이상 원소가 남아있지 않을 때까지 위 과정을 반복합니다. 자연수가 들어있는 리스트 arr가 매개변수로 주어질 때, 위 과정을 수행해서 만든 새로운 리스트를 return 하도록 solution 함수를 작성했습니다. 그러나, 코드 일부분이 잘못되어있기 때문에, 몇몇 입력에 대해서는 올바르게 동작하지 .. 2023. 2. 20.
[COS PRO 1급 #2-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 함수를 작성하려 합니다. 빈칸을 채워 전체 코드를 완성해주세요. 매.. 2023. 2. 20.
[COS PRO 1급 #2-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가 solution 함수.. 2023. 2. 20.
[COS PRO 1급 #2-5] 언제까지 오르막길이야 문제설명 자연수가 들어있는 리스트가 있습니다. 이 리스트에서, 숫자가 연속해서 증가하는 가장 긴 구간의 길이를 구하려 합니다. 단, 바로 전 숫자와 현재 숫자가 같은 경우는 증가한 것으로 보지 않습니다. 예를 들어 리스트에 순서대로 [3, 1, 2, 4, 5, 1, 2, 2, 3, 4]가 들어있는 경우, [1, 2, 4, 5]가 들어있는 구간이 숫자가 연속해서 증가한 가장 긴 구간이며, 길이는 4입니다. 자연수가 들어있는 리스트 arr가 매개변수로 주어질 때, 숫자가 연속해서 증가하는 가장 긴 구간의 길이를 return 하도록 solution 함수를 완성해주세요. 매개변수 설명 자연수가 들어있는 리스트 arr가 solution 함수의 매개변수로 주어집니다. * arr의 길이는 2 이상 200,000 이하.. 2023. 2. 19.
[COS PRO 1급 #2-4] 합이 k배가 되는 수 문제설명 자연수가 중복 없이 들어있는 리스트가 있습니다. 이 리스트에서 합이 K의 배수가 되도록 서로 다른 숫자 세개를 고르는 방법은 몇 가지인지 세려고 합니다. 자연수가 들어있는 리스트 arr가 매개변수로 주어질 때, 이 리스트에서 합이 K의 배수가 되도록 서로 다른 숫자 세개를 고르는 방법의 가짓수를 return 하도록 solution 함수를 완성해주세요. 매개변수 설명 자연수가 들어있는 리스트 arr가 solution 함수의 매개변수로 주어집니다. * arr의 길이는 3 이상 100 이하입니다. * arr에는 1 이상 1,000 이하의 자연수가 중복 없이 들어있습니다. * K는 1 이상 10 이하의 자연수입니다. return 값 설명 리스트에서 합이 K의 배수가 되도록 서로 다른 숫자 세개를 고르는.. 2023. 2. 19.
[COS PRO 1급 #2-3] 경품 당첨자를 구해주세요 문제설명 A 사이트에서 아래 조건에 맞는 게시글을 **최초**로 작성하는 이용자에게 경품을 제공하려 합니다. * 현재 작성되어있는 가장 마지막 게시글 이후에 작성된 게시글이어야 합니다. * 게시글 번호의 자릿수가 짝수여야 합니다. * 게시글 번호가 2n 자릿수 일때, 앞 n 자리의 각 자릿수의 합과 뒤 n 자리의 각 자릿수의 합이 같아야 합니다. 이 사이트의 게시글 번호는 마지막에 작성된 게시글 번호부터 1씩 증가합니다. 예를 들어, 가장 마지막 게시글의 번호가 235386이라면, 이후에 작성되는 게시글의 번호는 235387, 235388 ... 이 되며, 번호가 235387 이상인 게시글이 경품당첨의 대상이 됩니다. 당신은 경품을 받기위해 앞으로 게시글을 몇 개 더 작성해야 하는지 구하려 합니다. 이를.. 2023. 2. 19.
[COS PRO 1급 #2-2] 지하철 기다리기 문제설명 A 지하철역의 오늘 하루 지하철 도착 시각이 순서대로 들어있는 리스트가 있습니다. 현재 시간이 주어졌을 때, 지하철을 타기위해서는 최소 몇 분을 기다려야 하는지 구하려 합니다. 이를 위해 다음과 같이 프로그램 구조를 작성했습니다. ~~~ 1. 00:00을 기준으로 해서 현재 시각을 분 단위로 변환합니다. 2. 리스트를 순회하며 다음을 수행합니다. 2-1. 00:00을 기준으로, 각 지하철 도착 시각을 분 단위로 변환합니다. 2-2. 현재 시각과 지하철 도착 시각을 비교하여 최소 대기 시간을 구합니다. 3. 2번 단계에서 구한 최소 대기 시간을 return 합니다. ~~~ 오늘 하루 동안의 지하철 도착 시각이 순서대로 들어있는 리스트 subway_times와 현재시간 current_time이 매개.. 2023. 2. 16.
[COS PRO 1급 #2-1] 도서 대여점 운영 문제설명 도서 대여점의 만화책과 소설책의 대여 요금이 다음과 같습니다. | 구분 | 대여 요금 | 추가 요금 | |--------|-----------------|--------------------| | 만화책 | 첫 2일 500원 | 이후 1일당 200원씩 추가 | | 소설책 | 첫 3일 1000원 | 이후 1일당 300원씩 추가 | 만화책과 소설책의 대여 요금을 계산하기 위해 아래 그림과 같이 Book 인터페이스와 ComicBook, Novel 클래스를 작성했습니다. * Book : * Book은 책의 인터페이스입니다.. * 책은 get_rental_price 함수를 구현해야 합니다. * get_rental_price 함수는 대여 기간을 매개변수로 받아 대여 요금을 계산합니다. * ComicBook.. 2023. 2. 16.
반응형