본문 바로가기
728x90
반응형

코딩테스트294

[코딩테스트 Lv.0] flag에 따라 다른 값 반환하기 문제 설명두 정수 a, b와 boolean 변수 flag가 매개변수로 주어질 때, flag가 true면 a + b를 false면 a - b를 return 하는 solution 함수를 작성해 주세요.제한사항-1,000 ≤ a, b ≤ 1,000입출력 예a b flag result-4 7 true 3-4 7 false -11입출력 설명입출력 예 #1예제 1번에서 flag가 true이므로 a + b = (-4) + 7 = 3을 return 합니다.입출력 예 #2예제 2번에서 flag가 false이므로 a - b = (-4) - 7 = -11을 return 합니다.내 풀이Javaclass Solution { public int solution(int a, int b, boolean flag) { .. 2025. 4. 2.
[코딩테스트 Lv.0] 코드 처리하기 문제 설명문자열 code가 주어집니다.code를 앞에서부터 읽으면서 만약 문자가 "1"이면 mode를 바꿉니다. mode에 따라 code를 읽어가면서 문자열 ret을 만들어냅니다.mode는 0과 1이 있으며, idx를 0 부터 code의 길이 - 1 까지 1씩 키워나가면서 code[idx]의 값에 따라 다음과 같이 행동합니다.mode가 0일 때code[idx]가 "1"이 아니면 idx가 짝수일 때만 ret의 맨 뒤에 code[idx]를 추가합니다.code[idx]가 "1"이면 mode를 0에서 1로 바꿉니다.mode가 1일 때code[idx]가 "1"이 아니면 idx가 홀수일 때만 ret의 맨 뒤에 code[idx]를 추가합니다.code[idx]가 "1"이면 mode를 1에서 0으로 바꿉니다.문자열 co.. 2025. 4. 2.
[코딩테스트 Lv.0] 등차수열의 특정한 항만 더하기 문제 설명두 정수 a, d와 길이가 n인 boolean 배열 included가 주어집니다. 첫째항이 a, 공차가 d인 등차수열에서 included[i]가 i + 1항을 의미할 때, 이 등차수열의 1항부터 n항까지 included가 true인 항들만 더한 값을 return 하는 solution 함수를 작성해 주세요.제한사항1 ≤ a ≤ 1001 ≤ d ≤ 1001 ≤ included의 길이 ≤ 100included에는 true가 적어도 하나 존재합니다.입출력 예a d included result3 4 [true, false, false, true, true] 377 1 [false, false, false, true, false, false, false] 10입출력 설명입출력 예 #1예제 1번은 a와 d가.. 2025. 4. 2.
[코딩테스트 Lv.0] 주사위 게임 2 문제 설명1부터 6까지 숫자가 적힌 주사위가 세 개 있습니다. 세 주사위를 굴렸을 때 나온 숫자를 각각 a, b, c라고 했을 때 얻는 점수는 다음과 같습니다.세 숫자가 모두 다르다면 a + b + c 점을 얻습니다.세 숫자 중 어느 두 숫자는 같고 나머지 다른 숫자는 다르다면 (a + b + c) × (a2 + b2 + c2 )점을 얻습니다.세 숫자가 모두 같다면 (a + b + c) × (a2 + b2 + c2 ) × (a3 + b3 + c3 )점을 얻습니다.세 정수 a, b, c가 매개변수로 주어질 때, 얻는 점수를 return 하는 solution 함수를 작성해 주세요.제한사항a, b, c는 1이상 6이하의 정수입니다.입출력 예a b c result2 6 1 95 3 3 4734 4 4 11059.. 2025. 4. 1.
[코딩테스트 Lv.0] 원소들의 곱과 합 문제 설명정수가 담긴 리스트 num_list가 주어질 때, 모든 원소들의 곱이 모든 원소들의 합의 제곱보다 작으면 1을 크면 0을 return하도록 solution 함수를 완성해주세요.제한사항2 ≤ num_list의 길이 ≤ 101 ≤ num_list의 원소 ≤ 9입출력 예num_list result[3, 4, 5, 2, 1] 1[5, 7, 8, 3] 0입출력 설명입출력 예 #1모든 원소의 곱은 120, 합의 제곱은 225이므로 1을 return합니다.입출력 예 #2모든 원소의 곱은 840, 합의 제곱은 529이므로 0을 return합니다.내 풀이Javaclass Solution { public int solution(int[] num_list) { int answer = 0; .. 2025. 4. 1.
[코딩테스트 Lv.0] 이어 붙인 수 문제 설명정수가 담긴 리스트 num_list가 주어집니다. num_list의 홀수만 순서대로 이어 붙인 수와 짝수만 순서대로 이어 붙인 수의 합을 return하도록 solution 함수를 완성해주세요.제한사항2 ≤ num_list의 길이 ≤ 101 ≤ num_list의 원소 ≤ 9num_list에는 적어도 한 개씩의 짝수와 홀수가 있습니다.입출력 예num_list result[3, 4, 5, 2, 1] 393[5, 7, 8, 3] 581입출력 설명입출력 예 #1홀수만 이어 붙인 수는 351이고 짝수만 이어 붙인 수는 42입니다. 두 수의 합은 393입니다.입출력 예 #2홀수만 이어 붙인 수는 573이고 짝수만 이어 붙인 수는 8입니다. 두 수의 합은 581입니다.내 풀이Javaclass Solution .. 2025. 4. 1.
[코딩테스트 Lv.0] 마지막 두 원소 문제 설명정수 리스트 num_list가 주어질 때, 마지막 원소가 그전 원소보다 크면 마지막 원소에서 그전 원소를 뺀 값을 마지막 원소가 그전 원소보다 크지 않다면 마지막 원소를 두 배한 값을 추가하여 return하도록 solution 함수를 완성해주세요.제한사항2 ≤ num_list의 길이 ≤ 101 ≤ num_list의 원소 ≤ 9입출력 예num_list result[2, 1, 6] [2, 1, 6, 5][5, 2, 1, 7, 5] [5, 2, 1, 7, 5, 10입출력 설명입출력 예 #1마지막 원소인 6이 그전 원소인 1보다 크기 때문에 6 - 1인 5를 추가해 return합니다.입출력 예 #2마지막 원소인 5가 그전 원소인 7보다 크지 않기 때문에 5의 두 배인 10을 추가해 return합니다.내.. 2025. 3. 31.
[코딩테스트 Lv.0] 수 조작하기 1 문제 설명정수 n과 문자열 control이 주어집니다. control은 "w", "a", "s", "d"의 4개의 문자로 이루어져 있으며, control의 앞에서부터 순서대로 문자에 따라 n의 값을 바꿉니다."w" : n이 1 커집니다."s" : n이 1 작아집니다."d" : n이 10 커집니다."a" : n이 10 작아집니다.위 규칙에 따라 n을 바꿨을 때 가장 마지막에 나오는 n의 값을 return 하는 solution 함수를 완성해 주세요.제한사항● -100,000 ≤ n ≤ 100,000● 1 ≤ control의 길이 ≤ 100,000 ○ control은 알파벳 소문자 "w", "a", "s", "d"로 이루어진 문자열입니다.입출력 예n control result0 "wsdawsdassw".. 2025. 3. 31.
[코딩테스트 Lv.0] 수 조작하기 2 문제 설명정수 배열 numLog가 주어집니다. 처음에 numLog[0]에서 부터 시작해 "w", "a", "s", "d"로 이루어진 문자열을 입력으로 받아 순서대로 다음과 같은 조작을 했다고 합시다."w" : 수에 1을 더한다."s" : 수에 1을 뺀다."d" : 수에 10을 더한다."a" : 수에 10을 뺀다.그리고 매번 조작을 할 때마다 결괏값을 기록한 정수 배열이 numLog입니다. 즉, numLog[i]는 numLog[0]로부터 총 i번의 조작을 가한 결과가 저장되어 있습니다.주어진 정수 배열 numLog에 대해 조작을 위해 입력받은 문자열을 return 하는 solution 함수를 완성해 주세요.제한사항● 2 ≤ numLog의 길이 ≤ 100,000 ○ -100,000 ≤ numLog[0] .. 2025. 3. 29.
[코딩테스트 Lv.0] 수열과 구간 쿼리 3 문제 설명수 배열 arr와 2차원 정수 배열 queries이 주어집니다. queries의 원소는 각각 하나의 query를 나타내며, [i, j] 꼴입니다.각 query마다 순서대로 arr[i]의 값과 arr[j]의 값을 서로 바꿉니다.위 규칙에 따라 queries를 처리한 이후의 arr를 return 하는 solution 함수를 완성해 주세요.제한사항● 1 ≤ arr의 길이 ≤ 1,000 ○ 0 ≤ arr의 원소 ≤ 1,000,000● 1 ≤ queries의 길이 ≤ 1,000 ○ 0 ≤ i 입출력 예arr queries result[0, 1, 2, 3, 4] [[0, 3],[1, 2],[1, 4]] [3, 4, 1, 0, 2]입출력 설명입출력 예 #1각 쿼리에 따라 arr가 다음과 같이 변.. 2025. 3. 28.
[코딩테스트 Lv.0] 수열과 구간 쿼리 2 문제 설명정수 배열 arr와 2차원 정수 배열 queries이 주어집니다. queries의 원소는 각각 하나의 query를 나타내며, [s, e, k] 꼴입니다.각 query마다 순서대로 s ≤ i ≤ e인 모든 i에 대해 k보다 크면서 가장 작은 arr[i]를 찾습니다.각 쿼리의 순서에 맞게 답을 저장한 배열을 반환하는 solution 함수를 완성해 주세요.단, 특정 쿼리의 답이 존재하지 않으면 -1을 저장합니다.제한사항● 1 ≤ arr의 길이 ≤ 1,000 ○ 0 ≤ arr의 원소 ≤ 1,000,000● 1 ≤ queries의 길이 ≤ 1,000 ○ 0 ≤ s ≤ e 입출력 예arr queries result[0, 1, 2, 4, 3] [[0, 4, 2],[0, 3, 2],[0, 2, .. 2025. 3. 27.
[코딩테스트 Lv.0] 수열과 구간 쿼리 4 문제 설명정수 배열 arr와 2차원 정수 배열 queries이 주어집니다. queries의 원소는 각각 하나의 query를 나타내며, [s, e, k] 꼴입니다.각 query마다 순서대로 s ≤ i ≤ e인 모든 i에 대해 i가 k의 배수이면 arr[i]에 1을 더합니다.위 규칙에 따라 queries를 처리한 이후의 arr를 return 하는 solution 함수를 완성해 주세요.제한사항1 ≤ arr의 길이 ≤ 1,000 ○ 0 ≤ arr의 원소 ≤ 1,000,0001 ≤ queries의 길이 ≤ 1,000 ○ 0 ≤ s ≤ e 입출력 예arr queries result[0, 1, 2, 4, 3] [[0, 4, 1],[0, 3, 2],[0, 3, 3]] [3, 2, 4, 6, 4]입출력.. 2025. 3. 27.
[코딩테스트 Lv.0] 배열 만들기 2 문제 설명정수 l과 r이 주어졌을 때, l 이상 r이하의 정수 중에서 숫자 "0"과 "5"로만 이루어진 모든 정수를 오름차순으로 저장한 배열을 return 하는 solution 함수를 완성해 주세요.만약 그러한 정수가 없다면, -1이 담긴 배열을 return 합니다.제한사항1 ≤ l ≤ r ≤ 1,000,000입출력 예l r result5 555 [5, 50, 55, 500, 505, 550, 555]10 20 [-1]입출력 설명입출력 예 #15 이상 555 이하의 0과 5로만 이루어진 정수는 작은 수부터 5, 50, 55, 500, 505, 550, 555가 있습니다. 따라서 [5, 50, 55, 500, 505, 550, 555]를 return 합니다.입출력 예 #210 이상 20 이하이면서 0과 5.. 2025. 3. 27.
[코딩테스트 Lv.0] 카운트 업 문제 설명정수 start_num와 end_num가 주어질 때, start_num부터 end_num까지의 숫자를 차례로 담은 리스트를 return하도록 solution 함수를 완성해주세요.제한사항0 ≤ start_num ≤ end_num ≤ 50입출력 예start_num end_num result3 10 [3, 4, 5, 6, 7, 8, 9, 10]입출력 설명입출력 예 #13부터 10까지의 숫자들을 담은 리스트 [3, 4, 5, 6, 7, 8, 9, 10]를 return합니다.내 풀이Javaclass Solution { public int[] solution(int start_num, int end_num) { int[] answer = new int[end_num - start_n.. 2025. 3. 27.
[코딩테스트 Lv.0] 콜라츠 수열 만들기 문제 설명모든 자연수 x에 대해서 현재 값이 x이면 x가 짝수일 때는 2로 나누고, x가 홀수일 때는 3 * x + 1로 바꾸는 계산을 계속해서 반복하면 언젠가는 반드시 x가 1이 되는지 묻는 문제를 콜라츠 문제라고 부릅니다.그리고 위 과정에서 거쳐간 모든 수를 기록한 수열을 콜라츠 수열이라고 부릅니다.계산 결과 1,000 보다 작거나 같은 수에 대해서는 전부 언젠가 1에 도달한다는 것이 알려져 있습니다.임의의 1,000 보다 작거나 같은 양의 정수 n이 주어질 때 초기값이 n인 콜라츠 수열을 return 하는 solution 함수를 완성해 주세요.제한사항1 ≤ n ≤ 1,000입출력 예n result10 [10, 5, 16, 8, 4, 2, 1]입출력 설명입출력 예 #1순서대로 연산한 결과를 표로 만들.. 2025. 3. 26.
728x90
반응형