[코딩테스트 Lv.0] 조건에 맞게 수열 변환하기 2
문제 설명정수 배열 arr가 주어집니다. arr의 각 원소에 대해 값이 50보다 크거나 같은 짝수라면 2로 나누고, 50보다 작은 홀수라면 2를 곱하고 다시 1을 더합니다.이러한 작업을 x번 반복한 결과인 배열을 arr(x)라고 표현했을 때, arr(x) = arr(x + 1)인 x가 항상 존재합니다. 이러한 x 중 가장 작은 값을 return 하는 solution 함수를 완성해 주세요.단, 두 배열에 대한 "="는 두 배열의 크기가 서로 같으며, 같은 인덱스의 원소가 각각 서로 같음을 의미합니다.제한사항● 1 ≤ arr의 길이 ≤ 1,000,000 ○ 1 ≤ arr의 원소의 값 ≤ 100입출력 예arr result[1, 2, 3, 100, 99, 98] 5입출력 설명입출력 예 #1위 작업을 반복..
2025. 3. 5.
[코딩테스트 Lv.0] 조건에 맞게 수열 변환하기 1
문제 설명정수 배열 arr가 주어집니다. arr의 각 원소에 대해 값이 50보다 크거나 같은 짝수라면 2로 나누고, 50보다 작은 홀수라면 2를 곱합니다. 그 결과인 정수 배열을 return 하는 solution 함수를 완성해 주세요.제한사항● 1 ≤ arr의 길이 ≤ 1,000,000 ○ 1 ≤ arr의 원소의 값 ≤ 100입출력 예arr result[1, 2, 3, 100, 99, 98] [2, 2, 6, 50, 99, 49]입출력 설명입출력 예 #11, 3은 50 미만의 홀수 이므로 2를 곱하고, 100, 98은 50 이상의 짝수이므로 2로 나눕니다.나머지 값들은 변경 조건에 해당하지 않으므로 바꾸지 않습니다.따라서 [2, 2, 6, 50, 99, 49]를 return 합니다.내 풀이Jav..
2025. 3. 5.
[코딩테스트 Lv.0] 1로 만들기
문제 설명정수가 있을 때, 짝수라면 반으로 나누고, 홀수라면 1을 뺀 뒤 반으로 나누면, 마지막엔 1이 됩니다. 예를 들어 10이 있다면 다음과 같은 과정으로 1이 됩니다.10 / 2 = 5(5 - 1) / 2 = 22 / 2 = 1위와 같이 3번의 나누기 연산으로 1이 되었습니다.정수들이 담긴 리스트 num_list가 주어질 때, num_list의 모든 원소를 1로 만들기 위해서 필요한 나누기 연산의 횟수를 return하도록 solution 함수를 완성해주세요.제한사항3 ≤ num_list의 길이 ≤ 151 ≤ num_list의 원소 ≤ 30입출력 예num_list result[12, 4, 15, 1, 14] 11입출력 설명입출력 예 #112는 3번, 4는 2번, 15는 3번, 1은 0번, 14는 3..
2025. 3. 3.
[코딩테스트 Lv.0] 길이에 따른 연산
문제 설명정수가 담긴 리스트 num_list가 주어질 때, 리스트의 길이가 11 이상이면 리스트에 있는 모든 원소의 합을 10 이하이면 모든 원소의 곱을 return하도록 solution 함수를 완성해주세요.제한사항2 ≤ num_list의 길이 ≤ 201 ≤ num_list의 원소 ≤ 9num_list의 원소를 모두 곱했을 때 2,147,483,647를 넘는 입력은 주어지지 않습니다.입출력 예num_list result[3, 4, 5, 2, 5, 4, 6, 7, 3, 7, 2, 2, 1] 51[2, 3, 4, 5] 120입출력 설명입출력 예 #1리스트의 길이가 13이므로 모든 원소의 합인 51을 return합니다.입출력 예 #2리스트의 길이가 4이므로 모든 원소의 곱인 120을 return합니..
2025. 2. 27.
[PCCE 기출문제 Lv.0] 6번 / 물 부족
문제 설명ㅇㅇ시에서는 저수지가 하나 있는데, 도시 내에서 사용하는 모든 물은 이 저수지에 저장된 물을 끌어와 사용합니다. 이상 기후로 인해 극심한 가뭄이 예고된 상황에서, 지난 달의 물 사용량과 이번달부터 일정 기간 동안의 월별 물 사용량의 변화를 예측한 값을 이용해 몇 달 뒤 물이 부족해지는지 예측하려고 합니다.이번달부터의 월별 물 사용량 변화를 예측한 값은 다음과 같이 리스트에 담겨 주어집니다.[10, -10, 10, -10, 10, -10, 10, -10, 10, -10]리스트의 각 원소는 해당 월의 물 사용량이 전 달에 비해 몇 % 만큼 증가 또는 감소하는지를 나타냅니다.예를 들어, 이번달의 물 사용량 (리스트의 첫 번째 원소)은 지난 달 보다 10% 증가한 값이며, 다음 달(리스트의 두 번째 원..
2025. 2. 21.
[코딩테스트 Lv.0] 배열에서 문자열 대소문자 변환하기
문제 설명문자열 배열 strArr가 주어집니다. 모든 원소가 알파벳으로만 이루어져 있을 때, 배열에서 홀수번째 인덱스의 문자열은 모든 문자를 대문자로, 짝수번째 인덱스의 문자열은 모든 문자를 소문자로 바꿔서 반환하는 solution 함수를 완성해 주세요.제한사항● 1 ≤ strArr ≤ 20 ○ 1 ≤ strArr의 원소의 길이 ≤ 20 ○ strArr의 원소는 알파벳으로 이루어진 문자열 입니다.입출력 예strArr result["AAA","BBB","CCC","DDD"] ["aaa","BBB","ccc","DDD"]["aBc","AbC"] ["abc","ABC"]입출력 설명입출력 예 #1strArr[0]과 strArr[2]는 짝수번째 인덱스의 문자열이므로 모두 소문자로 바꿔서 "aaa"..
2025. 2. 20.
[코딩테스트 Lv.0] ad 제거하기
문제 설명문자열 배열 strArr가 주어집니다. 배열 내의 문자열 중 "ad"라는 부분 문자열을 포함하고 있는 모든 문자열을 제거하고 남은 문자열을 순서를 유지하여 배열로 return 하는 solution 함수를 완성해 주세요.제한사항● 1 ≤ strArr의 길이 ≤ 1,000 ○ 1 ≤ strArr의 원소의 길이 ≤ 20 ○ strArr의 원소는 알파벳 소문자로 이루어진 문자열입니다.입출력 예strArr result["and","notad","abcd"] ["and","abcd"]["there","are","no","a","ds"] ["there","are","no","a","ds"]입출력 설명입출력 예 #11번 인덱스의 문자열인 "notad"는 부분 문자열로 "ad"를 가집니다. 따라서 해..
2025. 2. 17.