본문 바로가기
728x90

CosPro1급31

Cos Pro 1급 - 샘플 문제 풀이 2차 5번 (배열: Index Out of Bounds피하기) 문제 지문 #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 이하입.. 2022. 10. 13.
Cos Pro 1급 - 샘플 문제 풀이 2차 4번 (배열에서 중복없이 추출하기) 문제 지문 #4 자연수가 중복 없이 들어있는 배열이 있습니다. 이 배열에서 합이 K의 배수가 되도록 서로 다른 숫자 세 개를 고르는 방법은 몇 가지인지 세려고 합니다. 자연수가 들어있는 배열 arr가 매개변수로 주어질 때, 이 배열에서 합이 K의 배수가 되도록 서로 다른 숫자 세 개를 고르는 방법의 가짓수를 return 하도록 solution 메서드를 완성해주세요. 매개변수 설명 자연수가 들어있는 배열 arr가 solution 메소드의 매개변수로 주어집니다. arr의 길이는 3 이상 100 이하입니다. arr에는 1 이상 1,000 이하의 자연수가 중복 없이 들어있습니다. K는 1 이상 10 이하의 자연수입니다. return 값 설명 배열에서 합이 K의 배수가 되도록 서로 다른 숫자 세개를 고르는 방법의.. 2022. 10. 12.
Cos Pro 1급 - 샘플 문제 풀이 2차 3번 (각 자리수의 숫자 더하기) 문제 지문 #3 A 사이트에서 아래 조건에 맞는 게시글을 최초로 작성하는 이용자에게 경품을 제공하려 합니다. 현재 작성되어있는 가장 마지막 게시글 이후에 작성된 게시글이어야 합니다. 게시글 번호의 자릿수가 짝수여야 합니다. 게시글 번호가 2n 자릿수 일 때, 앞 n 자리의 각 자릿수의 합과 뒤 n 자리의 각 자릿수의 합이 같아야 합니다. 이 사이트의 게시글 번호는 마지막에 작성된 게시글 번호부터 1씩 증가합니다. 예를 들어, 가장 마지막 게시글의 번호가 235386이라면, 이후에 작성되는 게시글의 번호는 235387, 235388... 이 되며, 번호가 235387 이상인 게시글이 경품 당첨의 대상이 됩니다. 당신은 경품을 받기위해 앞으로 게시글을 몇 개 더 작성해야 하는지 구하려 합니다. 이를 위해 다.. 2022. 10. 11.
Cos Pro 1급 - 샘플 문제 풀이 2차 2번 문제 지문 #2 A 지하철역의 오늘 하루 지하철 도착 시각이 순서대로 들어있는 배열이 있습니다. 현재 시간이 주어졌을 때, 지하철을 타기위해서는 최소 몇 분을 기다려야 하는지 구하려 합니다. 이를 위해 다음과 같이 프로그램 구조를 작성했습니다. 1. 00:00을 기준으로 해서 현재 시각을 분 단위로 변환합니다. 2. 배열을 순회하며 다음을 수행합니다. 2-1. 00:00을 기준으로, 각 지하철 도착 시각을 분 단위로 변환합니다. 2-2. 현재 시각과 지하철 도착 시각을 비교하여 최소 대기 시간을 구합니다. 3. 2번 단계에서 구한 최소 대기 시간을 return 합니다. 오늘 하루 동안의 지하철 도착 시각이 순서대로 들어있는 배열 subwayTimes와 현재시간 currentTime이 매개변수로 주어질 때.. 2022. 10. 10.
Cos Pro 1급 - 샘플 문제 풀이 2차 1번 문제 풀이 #1 도서 대여점의 만화책과 소설책의 대여 요금이 다음과 같습니다. 구분 대여 요금 추가 요금 만화책 첫 2일 500원 이후 1일당 200원씩 추가 소설책 첫 3일 1000원 이후 1일당 300원씩 추가 만화책과 소설책의 대여 요금을 계산하기 위해 아래 그림과 같이 Book 인터페이스와 ComicBook, Novel 클래스를 작성했습니다. Book : Book은 책의 인터페이스입니다.. 책은 getRentalPrice 메소드를 구현해야 합니다. getRentalPrice 메소드는 대여 기간을 매개변수로 받아 대여 요금을 계산합니다. ComicBook : ComicBook은 만화책을 나타내는 클래스이며, Book 인터페이스를 구현합니다. getRentalPrice 메소드는 대여 기간을 매개변수로.. 2022. 10. 9.
Cos Pro 1급 - 샘플 문제 풀이 1차 10번 문제 지문 #10 문자열 형태의 식을 계산하려 합니다. 식은 2개의 자연수와 1개의 연산자('+', '-', '*' 중 하나)로 이루어져 있습니다. 예를 들어 주어진 식이 "123+12"라면 이를 계산한 결과는 135입니다. 문자열로 이루어진 식을 계산하기 위해 다음과 같이 간단히 프로그램 구조를 작성했습니다. 1단계. 주어진 식에서 연산자의 위치를 찾습니다. 2단계. 연산자의 앞과 뒤에 있는 문자열을 각각 숫자로 변환합니다. 3단계. 주어진 연산자에 맞게 연산을 수행합니다. 문자열 형태의 식 expression이 매개변수로 주어질 때, 식을 계산한 결과를 return 하도록 solution 메소드를 작성하려 합니다. 위 구조를 참고하여 코드가 올바르게 동작할 수 있도록 빈칸에 주어진 func_a, fu.. 2022. 10. 8.
Cos Pro 1급 - 샘플 문제 풀이 1차 9번 문제 지문 #9 해밍 거리(Hamming distance)란 같은 길이를 가진 두 개의 문자열에서 같은 위치에 있지만 서로 다른 문자의 개수를 뜻합니다. 예를 들어 두 2진수 문자열이 "10010"과 "110"이라면, 먼저 두 문자열의 자릿수를 맞추기 위해 "110"의 앞에 0 두개를 채워 "00110"으로 만들어 줍니다. 두 2진수 문자열은 첫 번째와 세 번째 문자가 서로 다르므로 해밍 거리는 2입니다. 1001 0 0011 0 두 2진수 문자열 binaryA, binaryB의 해밍 거리를 구하려 합니다. 이를 위해 다음과 같이 간단히 프로그램 구조를 작성했습니다 1단계. 길이가 더 긴 2진수 문자열의 길이를 구합니다. 2단계. 첫 번째 2진수 문자열의 길이가 더 짧다면 문자열의 앞에 0을 채워넣어 길.. 2022. 10. 7.
Cos Pro 1급 - 샘플 문제 풀이 1차 8번 문제 풀이 #8 배달음식 전문점 운영을 위해 다음과 같이 DeliveryStore 인터페이스와 PizzaStore, Food 클래스를 작성했습니다. DeliveryStore : DeliveryStore는 배달 음식점의 인터페이스입니다. 배달 음식점은 setOrderList와 getTotalPrice 메소드를 구현해야 합니다. setOrderList 메소드는 주문 메뉴의 리스트를 매개변수로 받아 저장합니다. getTotalPrice 메소드는 주문받은 음식 가격의 총합을 return 합니다. Food : Food는 음식을 나타내는 클래스입니다. 음식은 이름(name)과 가격(price)으로 구성되어있습니다. PizzaStore PizzaStore는 피자 배달 전문점을 나타내는 클래스이며 DeliverySto.. 2022. 10. 7.
Cos Pro 1급 - 샘플 문제 풀이 1차 7번 문제 지문 #7 지난 연속된 n일 동안의 주식 가격이 순서대로 들어있는 배열이 있습니다. 이때, 다음 규칙에 따라 주식을 사고팔았을 때의 최대 수익을 구하려 합니다. n일 동안 주식을 단 한 번 살 수 있습니다. n일 동안 주식을 단 한 번 팔 수 있습니다. 주식을 산 날에 바로 팔 수는 없으며, 최소 하루가 지나야 팔 수 있습니다. 적어도 한 번은 주식을 사야 하며, 한 번은 팔아야 합니다. 주식을 팔 때는 반드시 이전에 주식을 샀어야 하며, 최대 수익은 양수가 아닐 수도 있습니다. 연속된 n 일 동안의 주식 가격이 순서대로 들어있는 배열 prices가 매개변수로 주어질 때, 주식을 규칙에 맞게 한 번만 사고팔았을 때 얻을 수 있는 최대 수익을 return 하도록 solution 메서드를 작성했습니다... 2022. 10. 7.
728x90