본문 바로가기

Develop

(22)
코딩테스트 입문 (feat. Day 20 수학, 시뮬레이션, 문자열, 사칙연산) 1.  직사각형 넓이 구하기Q. 2차원 좌표 평면에 변이 축과 평행한 직사각형이 있습니다. 직사각형 네 꼭짓점의 표 [[x1, y1], [x2, y2], [x3, y3], [x4, y4]]가 담겨있는 배열 dots가 매개변수로 주어질 때, 직사각형의 넓이를 return 하도록 solution 함수를 완성해보세요.func solution(_ dots:[[Int]]) -> Int { var xPoint: [Int] = [] var yPoint: [Int] = [] dots.forEach { xPoint.append($0[0]) yPoint.append($0[1]) } return (xPoint.max()! - xPoint.min()!) * (yPoint.m..
코딩테스트 입문 (feat. Day 19 문자열, 배열, 조건문) 1.  7의 개수Q. 머쓱이는 행운의 숫자 7을 가장 좋아합니다. 정수 배열 array가 매개변수로 주어질 때, 7이 총 몇 개 있는지 return 하도록 solution 함수를 완성해보세요.func solution(_ array:[Int]) -> Int { var result: Int = 0 var temp = array.map { String($0) } temp.forEach { $0.forEach { val in result += val == "7" ? 1 : 0 } } return result} A. 전달 받은 정수 배열 array를 문자열 배열로 변환한 후 순회하면서 각각의 문자열을 또 다시 순회하여 한 글자씩 "7"인지를 ..
코딩테스트 입문 (feat. Day 18 문자열, 수학, 조건문, 정렬) 1.  문자열안에 문자열Q. 문자열 str1, str2가 매개변수로 주어집니다. str1 안에 str2가 있다면 1을 없다면 2를 return하도록 solution 함수를 완성해주세요.func solution(_ str1:String, _ str2:String) -> Int { return str1.contains(str2) ? 1 : 2} A. contains를 활용하여 전달 받은 str1에 str2이 포함되는지 판별한 후, 포함되면 1을 포함되지 않으면 2를 반환하여 해결했다.2. 제곱수 판별하기Q. 어떤 자연수를 제곱했을 때 나오는 정수를 제곱수라고 합니다. 정수 n이 매개변수로 주어질 때, n이 제곱수라면 1을 아니라면 2를 return하도록 solution 함수를 완성해주세요.func so..
코딩테스트 입문 (feat. Day 17 문자열, 수학, 배열, 조건문) 1. 숫자 찾기  Q. 정수 num과 k가 매개변수로 주어질 때, num을 이루는 숫자 중에 k가 있으면 num의 그 숫자가 있는 자리 수를 return하고 없으면 -1을 return 하도록 solution 함수를 완성해보세요.func solution(_ num:Int, _ k:Int) -> Int { var result = -1 String(num).enumerated().forEach { if result == -1 && Int(String($1))! == k { result = $0 + 1 } } return result} A. 전달 받은 num을 String으로 변환한 후 enumerated()를 통해 반복하면서 result가 -1..
코딩테스트 입문 (feat. Day 16 문자열, 수학, 배열, 조건문) 1. 편지Q. 머쓱이는 할머니께 생신 축하 편지를 쓰려고 합니다. 할머니가 보시기 편하도록 글자 한 자 한 자를 가로 2cm 크기로 적으려고 하며, 편지를 가로로만 적을 때, 축하 문구 message를 적기 위해 필요한 편지지의 최소 가로길이를 return 하도록 solution 함수를 완성해주세요.func solution(_ message:String) -> Int { return message.count * 2} A. 전달 받은 message의 길이에 2를 곱한 값을 반환하여 해결했다. 2. 가장 큰 수 찾기Q. 정수 배열 array가 매개변수로 주어질 때, 가장 큰 수와 그 수의 인덱스를 담은 배열을 return 하도록 solution 함수를 완성해보세요.func solution(_ array..
코딩테스트 입문 (feat. Day 15 문자열, 해시, 배열, 수학) 1.  영어가 싫어요Q. 영어가 싫은 머쓱이는 영어로 표기되어있는 숫자를 수로 바꾸려고 합니다. 문자열 numbers가 매개변수로 주어질 때, numbers를 정수로 바꿔 return 하도록 solution 함수를 완성해 주세요.func solution(_ numbers:String) -> Int64 { var result: String = numbers .replacingOccurrences(of: "zero", with: "0") .replacingOccurrences(of: "one", with: "1") .replacingOccurrences(of: "two", with: "2") .replacingOccurrences(of: "three",..
코딩테스트 입문 (feat. Day 14 문자열, 배열, 사칙연산, 수학, 조건문) 1.  가까운 수Q. 정수 배열 array와 정수 n이 매개변수로 주어질 때, array에 들어있는 정수 중 n과 가장 가까운 수를 return 하도록 solution 함수를 완성해주세요. (가장 가까운 수가 여러 개일 경우 더 작은 수를 return 합니다.)func solution(_ array:[Int], _ n:Int) -> Int { var result: Int = 0 var minValue: Int = 100 array.forEach { let gap = abs($0 - n) if minValue > gap { minValue = gap result = $0 } else if minValue == ga..
코딩테스트 입문 (feat. Day 13 문자열, 배열, 사칙연산, 수학, 조건문) 1.  컨트롤 제트Q. 숫자와 "Z"가 공백으로 구분되어 담긴 문자열이 주어집니다. 문자열에 있는 숫자를 차례대로 더하려고 합니다. 이 때 "Z"가 나오면 바로 전에 더했던 숫자를 뺀다는 뜻입니다. 숫자와 "Z"로 이루어진 문자열 s가 주어질 때, 머쓱이가 구한 값을 return 하도록 solution 함수를 완성해보세요.func solution(_ s:String) -> Int { var result: Int = 0 var preValue: Int = 0 s.components(separatedBy: " ").forEach { if $0 == "Z" { result -= preValue } else { preValue = ..