Chapter02 55

[ 고딩데스드 ] x만큼 간격이 있는 n개의 숫자

코딩테스트 연습 > 연습문제 > x만큼 간격이 있는 n개의 숫자 문제 설명 함수 solution은 정수 x와 자연수 n을 입력 받아, x부터 시작해 x씩 증가하는 숫자를 n개 지니는 리스트를 리턴해야 합니다. 다음 제한 조건을 보고, 조건을 만족하는 함수, solution을 완성해주세요. 제한 조건 x는 -10000000 이상, 10000000 이하인 정수입니다. n은 1000 이하인 자연수입니다. 입출력 예 x n answer 2 5 [2,4,6,8,10] 4 3 [4,8,12] -4 2 [-4, -8] class Solution { public long[] solution(int x, int n) { long[] answer = new long[n]; for (int i = 0; i < n; i++)..

[ 고딩데스드 ] 해시 > 완주하지 못한 선수

코딩테스트 연습 > 해시 > 완주하지 못한 선수문제 설명 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들의 이름이 담긴 배열 completion이 주어질 때, 완주하지 못한 선수의 이름을 return 하도록 solution 함수를 작성해주세요. 제한사항 마라톤 경기에 참여한 선수의 수는 1명 이상 100,000명 이하입니다. completion의 길이는 participant의 길이보다 1 작습니다. 참가자의 이름은 1개 이상 20개 이하의 알파벳 소문자로 이루어져 있습니다. 참가자 중에는 동명이인이 있을 수 있습니다.입출력 예 participant compl..

[ 고딩데스드 ] 전화번호 목록

코딩테스트 연습 > 해시 > 전화번호 목록 문제 설명 전화번호부에 적힌 전화번호 중, 한 번호가 다른 번호의 접두어인 경우가 있는지 확인하려 합니다. 전화번호가 다음과 같을 경우, 구조대 전화번호는 영석이의 전화번호의 접두사입니다. 구조대 : 119 박준영 : 97 674 223 지영석 : 11 9552 4421 전화번호부에 적힌 전화번호를 담은 배열 phone_book 이 solution 함수의 매개변수로 주어질 때, 어떤 번호가 다른 번호의 접두어인 경우가 있으면 false를 그렇지 않으면 true를 return 하도록 solution 함수를 작성해주세요. 제한 사항 phone_book의 길이는 1 이상 1,000,000 이하입니다. 각 전화번호의 길이는 1 이상 20 이하입니다. 같은 전화번호가 중..

[고딩데스드] K번째수

코딩테스트 연습 > 정렬 > K번째수 문제 설명 배열 array의 i번째 숫자부터 j번째 숫자까지 자르고 정렬했을 때, k번째에 있는 수를 구하려 합니다. 예를 들어 array가 [1, 5, 2, 6, 3, 7, 4], i = 2, j = 5, k = 3이라면 array의 2번째부터 5번째까지 자르면 [5, 2, 6, 3]입니다. 1에서 나온 배열을 정렬하면 [2, 3, 5, 6]입니다. 2에서 나온 배열의 3번째 숫자는 5입니다. 배열 array, [i, j, k]를 원소로 가진 2차원 배열 commands가 매개변수로 주어질 때, commands의 모든 원소에 대해 앞서 설명한 연산을 적용했을 때 나온 결과를 배열에 담아 return 하도록 solution 함수를 작성해주세요. 제한사항 array의 ..

[고딩데스드] 프로그래머스 코딩 기초 트레이닝 > 더 크게 합치기

코딩테스트 연습 > 코딩 기초 트레이닝 > 더 크게 합치기 문제 설명 연산 ⊕는 두 정수에 대한 연산으로 두 정수를 붙여서 쓴 값을 반환합니다. 예를 들면 다음과 같습니다. 12 ⊕ 3 = 123 3 ⊕ 12 = 312 양의 정수 a와 b가 주어졌을 때, a ⊕ b와 b ⊕ a 중 더 큰 값을 return 하는 solution 함수를 완성해 주세요. 단, a ⊕ b와 b ⊕ a가 같다면 a ⊕ b를 return 합니다. 제한사항 1 ≤ a, b 0){ answer = a; }else{ answer = b; } return answer; } } 왜 3점이나 줄까?.. GPT한테 효율적으로 바꿔달라고했다.. class Solution { public int solution(int a, int b) { Str..

[고딩데스드] 프로그래머스 코딩 기초 트레이닝 > 문자 리스트를 문자열로 변환하기 , A 강조하기

코딩테스트 연습 > 코딩 기초 트레이닝 > 문자 리스트를 문자열로 변환하기 문제 설명 문자들이 담겨있는 배열 arr가 주어집니다. arr의 원소들을 순서대로 이어 붙인 문자열을 return 하는 solution함수를 작성해 주세요. 제한사항 1 ≤ arr의 길이 ≤ 200 arr의 원소는 전부 알파벳 소문자로 이루어진 길이가 1인 문자열입니다. 입출력 예 arr result ["a","b","c"] "abc" class Solution { public String solution(String[] arr) { String tmp = ""; String answer = ""; for(int i = 0; i< arr.length; i++){ tmp = arr[i] ; answer += tmp; } return..

[고딩데스드] 프로그래머스 코딩 기초 트레이닝 > 문자열 섞기 , 분수의 덧셈 , 중앙값 구하기

코딩테스트 연습 > 코딩 기초 트레이닝 > 문자열 섞기 문제 설명 길이가 같은 두 문자열 str1과 str2가 주어집니다. 두 문자열의 각 문자가 앞에서부터 서로 번갈아가면서 한 번씩 등장하는 문자열을 만들어 return 하는 solution 함수를 완성해 주세요. 제한사항 1 ≤ str1의 길이 = str2의 길이 ≤ 10 str1과 str2는 알파벳 소문자로 이루어진 문자열입니다. 입출력 예 str1 str2 result "aaaaa" "bbbbb" "ababababab" class Solution { public String solution(String str1, String str2) { StringBuilder answer = new StringBuilder(); for (int i = 0; i..

[고딩데스드] Lv.0 여러개

코딩테스트 연습 > 코딩 기초 트레이닝 > 덧셈식 출력하기문제 설명 두 정수 a, b가 주어질 때 다음과 같은 형태의 계산식을 출력하는 코드를 작성해 보세요. a + b = c 제한사항 1 ≤ a, b ≤ 100 입출력 예 입력 #1 4 5 출력 #1 4 + 5 = 9import java.util.Scanner;public class Solution { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int a = sc.nextInt(); int b = sc.nextInt(); System.out.println(a + " + " + b + " = " + (a ..

[고딩데스드] 코딩테스트 입문 > 편지 , 머쓱이보다 키가 큰 사람, 배열 자르기, 분수의 덧셈

코딩테스트 입문 > 편지 문제 설명 머쓱이는 할머니께 생신 축하 편지를 쓰려고 합니다. 할머니가 보시기 편하도록 글자 한 자 한 자를 가로 2cm 크기로 적으려고 하며, 편지를 가로로만 적을 때, 축하 문구 message를 적기 위해 필요한 편지지의 최소 가로길이를 return 하도록 solution 함수를 완성해주세요. 제한사항 공백도 하나의 문자로 취급합니다. 1 ≤ message의 길이 ≤ 50 편지지의 여백은 생각하지 않습니다. message는 영문 알파벳 대소문자, ‘!’, ‘~’ 또는 공백으로만 이루어져 있습니다. 입출력 예 message result "happy birthday!" 30 "I love you~" 22 입출력 예 #1 message의 글자 수가 15개로 최소 가로 30cm의 편..

[고딩데스드] 비밀지도도움말

네오는 평소 프로도가 비상금을 숨겨놓는 장소를 알려줄 비밀지도를 손에 넣었다. 그런데 이 비밀지도는 숫자로 암호화되어 있어 위치를 확인하기 위해서는 암호를 해독해야 한다. 다행히 지도 암호를 해독할 방법을 적어놓은 메모도 함께 발견했다. 지도는 한 변의 길이가 n인 정사각형 배열 형태로, 각 칸은 "공백"(" ") 또는 "벽"("#") 두 종류로 이루어져 있다. 전체 지도는 두 장의 지도를 겹쳐서 얻을 수 있다. 각각 "지도 1"과 "지도 2"라고 하자. 지도 1 또는 지도 2 중 어느 하나라도 벽인 부분은 전체 지도에서도 벽이다. 지도 1과 지도 2에서 모두 공백인 부분은 전체 지도에서도 공백이다. "지도 1"과 "지도 2"는 각각 정수 배열로 암호화되어 있다. 암호화된 배열은 지도의 각 가로줄에서 벽..