본문 바로가기

python3121

[COS PRO 1급 #5-10] 계산기 만들기 문제설명 직업에 아르바이트, 판매사원이 있습니다. 직원들 급여의 총합을 계산하기 위해 아래와 같이 Job, PartTimeJob, SalesJob 클래스를 작성했습니다. * Job : * Job : 직업을 나타내는 클래스입니다. * salary : 직업의 급여를 나타냅니다. 초기 급여는 0입니다. * get_salary : 직업의 급여를 return 합니다. * PartTimeJob : * PartTimeJob : 아르바이트를 나타내는 클래스이며 Job을 상속합니다. * work_hour : 아르바이트를 한 시간입니다. * pay_per_hour : 아르바이트의 시간 당 급여입니다. * get_salary : 아르바이트 급여를 계산하여 return 합니다. * SalesJob : * SalesJob : .. 2023. 3. 7.
[COS PRO 1급 #5-9] 몇 번 연산을 해야하나요 문제설명 정수 number와 target이 주어졌을 때, 다음 세 연산을 이용해 number를 target으로 만들려 합니다. ``` 연산 1. 1을 더합니다. 연산 2. 1을 뺍니다. 연산 3. 2를 곱합니다. ``` 정수 number와 target이 매개변수로 주어질 때, number로 target으로 만들려면 연산을 최소 몇 번 해야 하는지 return 하도록 solution 함수를 작성해 주세요. 매개변수 설명 두 정수 number와 target이 solution 함수의 매개변수로 주어집니다. * number와 target은 0 이상 10,000 이하입니다. return 값 설명 number를 target으로 만들려면 연산을 최소 몇 번 해야 하는지 return 합니다. 예시 | number |t.. 2023. 3. 7.
[COS PRO 1급 #5-8] 그래프에서 싸이클 찾기 문제설명 세 수 a, b, c의 공약수가 몇 개인지 구하려고 합니다. 공약수란, 동시에 모든 정수의 약수인 정수를 뜻합니다. 예를 들어, 세 수 24, 9, 15의 공약수는 1, 3이고, 따라서 양의 공약수는 2개입니다. 세 수의 공약수가 몇 개인지 구하기 위해 다음과 같이 프로그램 구조를 작성했습니다. ``` 1. 세 수의 최대공약수를 구합니다. 2. 앞서 구한 최대공약수의 약수가 몇 개인지 구합니다. ``` 세 수 a, b, c가 매개변수로 주어질 때, 세 수의 약수가 몇 개인지 return 하도록 solution 함수를 작성하려 합니다. 위 구조를 참고하여 코드가 올바르게 동작할 수 있도록 빈칸에 주어진 func_a, func_b, func_c 함수와 매개변수를 알맞게 채워주세요. 매개변수 설명 세.. 2023. 3. 5.
[COS PRO 1급 #5-7] 그래프에서 싸이클 찾기 문제설명 그래프의 노드 수와 노드 연결 순서가 주어질 때, 몇 번째 연결에 사이클이 생기는지 알고 싶습니다. 예를 들어, 노드가 3개이고 노드를 [[1, 2], [1, 3], [2, 3]] 순으로 연결한다면 아래 그림과 같습니다. 따라서 3번째 연결에서 사이클이 생깁니다. 그래프의 노드 수 n, 노드 연결 순서 connections가 매개변수로 주어질 때, 몇 번째 연결에 사이클이 생기는지 return 하도록 solution 함수를 작성하려 합니다. 빈칸을 채워 전체 코드를 완성해주세요. 매개변수 설명 그래프의 노드 수 n, 노드 연결 순서 connections가 solution 함수의 매개변수로 주어집니다. * 그래프의 노드 수 n은 3 이상 10 이하입니다. * connections은 길이가 3 이상.. 2023. 3. 5.
[COS PRO 1급 #5-6] p진법 to q진법 문제설명 p 진법으로 표현한 수란, 각 자리를 0부터 p-1의 숫자로만 나타낸 수를 의미합니다. p 진법으로 표현한 자연수 두개를 더한 결과를 q 진법으로 표현하려 합니다. 예를 들어, 3진법 수 112001과 12010을 더한 결과를 8진법으로 나타내면 1005입니다. solution 함수의 매개변수로 p 진법 자연수를 담은 문자열 s1, s2와 두 수를 나타내는 진법의 기수 p, 두 수의 덧셈 결과를 표현할 진법의 기수 q가 매개변수로 주어집니다. p진법으로 표현된 두 수를 더한 결과를 q 진법으로 나타낸 값을 return 하도록 solution 함수를 완성해주세요. 매개변수 설명 p 진법으로 자연수를 담은 문자열 s1, s2와 두 수를 표현한 진법의 기수 p, 두 수의 덧셈 결과를 표현할 진법의 기.. 2023. 3. 5.
[COS PRO 1급 #5-5] 몬스터 잡기 문제설명 XX게임에선 캐릭터는 자신과 공격력이 같거나 자신보다 공격력이 작은 몬스터에게 이깁니다. 내가 가진 캐릭터가 최대 몬스터 몇 마리를 이길 수 있는지 구하려 합니다. 단, 한 캐릭터는 한 번만 싸울 수 있습니다. 예를 들어, 세 몬스터의 공격력이 각각 [1, 4, 3]이고, 내가 가진 두 캐릭터의 공격력이 각각 [1, 3]이라면 첫 번째 캐릭터는 첫 번째 몬스터와, 두 번째 캐릭터는 세 번째 몬스터와 싸워서 이길 수 있습니다. 따라서 이길 수 있는 몬스터 수는 최대 2마리입니다. 모든 몬스터의 공격력을 담은 리스트 enemies, 내가 가진 모든 캐릭터의 공격력을 담은 리스트 armies가 매개변수로 주어질 때, 내 캐릭터로는 최대 몬스터 몇 마리를 이길 수 있는지 return 하도록 soluti.. 2023. 3. 4.
[COS PRO 1급 #5-4] 각 숫자가 몇 개가 있나요 문제설명 주어진 숫자를 각 숫자와 숫자의 개수로 읽으려 합니다. 이때, 값이 큰 숫자를 먼저 읽어야합니다. 예를 들어, 2433은 2 한개 4 한개 3 두개로 이루어져 있기 때문에 "413221"로 읽습니다. 숫자 number가 매개변수로 주어질 때, 숫자를 읽어 문자열로 return 하도록 solution 함수를 작성했습니다. 그러나, 일부 코드가 잘못되어 코드가 바르게 동작하지 않습니다. 주어진 코드가 모든 입력을 바르게 처리하도록 코드를 수정해주세요. 코드는 _**한 줄**_만 수정해야 합니다. 매개변수 설명 숫자 number가 solution 함수의 매개변수로 주어집니다. * number는 0 이상 2,000,000,000 이하인 정수입니다. return 값 설명 주어진 숫자를 읽어 문자열 형태로.. 2023. 3. 4.
[COS PRO 1급 #5-3] 배열의 사전순 정렬 문제설명 서로 다른 정수 n개가 담긴 리스트가 있습니다. 이 리스트를 앞 `(n+1)/2`개 원소는 증가하고 뒤 `(n+1)/2`개 원소는 감소하도록 정렬하려고 합니다. 이때, 조건을 만족하는 리스트가 여럿인 경우 사전순으로 가장 먼저 나오는 리스트를 답으로 합니다. 예를 들어, 주어진 리스트가 [7, 3, 4, 1, 2, 5, 6]라면 정렬한 이후에는 [1, 2, 3, 7, 6, 5, 4]가 됩니다. 정수 리스트가 numbers가 매개변수로 주어질 때, 문제의 조건에 맞게 정렬하여 return 하도록 solution 함수를 작성했습니다. 그러나, 코드 일부분이 잘못되어있기 때문에, 몇몇 입력에 대해서는 올바르게 동작하지 않습니다. 주어진 코드에서 _**한 줄**_만 변경해서 모든 입력에 대해 올바르게 .. 2023. 3. 4.
[COS PRO 1급 #5-2] 물을 최대한 담고 싶어요 문제설명 아래와 같이 벽이 여러 개 있을 때, 벽 2개를 제외한 나머지 벽을 제거하여 물을 최대한 담으려 합니다. 물은 `두 벽 사이의 거리 x 두 벽 중 낮은 벽의 높이`리터 만큼 담을 수 있으며, 두 벽의 거리는 두 벽의 위치 차이입니다. 모든 벽의 위치와 높이를 담은 2차원 리스트 walls가 매개변수로 주어질 때, 물을 최대 몇 리터나 담을 수 있는지 return 하도록 solution 함수를 작성했습니다. 그러나, 일부 코드가 잘못되어 코드가 바르게 동작하지 않습니다. 주어진 코드가 모든 입력을 바르게 처리하도록 코드를 수정해주세요. 코드는 _**한 줄**_만 수정해야 합니다. 매개변수 설명 모든 벽의 위치와 높이를 담은 2차원 리스트 walls가 solution 함수의 매개변수로 주어집니다. .. 2023. 3. 4.
[COS PRO 1급 #5-1] 우리는 계단도 특별하게 오르죠 문제설명 계단 n칸을 올라가는 방법의 수를 구하려고 합니다. 계단은 한 번에 1계단, 2계단, 3계단씩 오를 수 있습니다. 예를 들어, 계단 3칸을 오르는 방법은 다음과 같이 4가지가 있습니다. ``` 1. 1계단 + 1계단 + 1계단 2. 1계단 + 2계단 3. 2계단 + 1계단 4. 3계단 ``` 계단 수 n이 매개변수로 주어질 때, 계단을 오르는 경우의 수를 return 하도록 solution 함수를 작성하려 합니다. 빈칸을 채워 전체 코드를 완성해주세요. 매개변수 설명 계단 수 n이 solution 함수의 매개변수로 주어집니다. * n은 3 이상 30 이하인 정수입니다. return 값 설명 계단을 오르는 경우의 수를 return 합니다. 예시 | n | return | |---|--------|.. 2023. 3. 4.
반응형