본문 바로가기

분류 전체보기

[Swift] 코딩테스트 연습! Lv1. 2016년 /* 2016년 - 2016년 1월 1일은 금요일입니다. 2016년 a월 b일은 무슨 요일일까요? 두 수 a ,b를 입력받아 2016년 a월 b일이 무슨 요일인지 리턴하는 함수, solution을 완성하세요. 요일의 이름은 일요일부터 토요일까지 각각 SUN,MON,TUE,WED,THU,FRI,SAT 입니다. 예를 들어 a=5, b=24라면 5월 24일은 화요일이므로 문자열 "TUE"를 반환하세요. */ func solution(_ a:Int, _ b:Int) -> String { let dayList:[Int] = [31,29,31,30,31,30,31,31,30,31,30] let dayOfTheWeek:[String] = ["FRI","SAT","SUN","MON","TUE","WED","THU"] ..
[Swift] 코딩테스트 연습! Lv0. 옹알이 (1) /* 옹알이 (1) - 머쓱이는 태어난 지 6개월 된 조카를 돌보고 있습니다. 조카는 아직 "aya", "ye", "woo", "ma" 네 가지 발음을 최대 한 번씩 사용해 조합한(이어 붙인) 발음밖에 하지 못합니다. 문자열 배열 babbling이 매개변수로 주어질 때, 머쓱이의 조카가 발음할 수 있는 단어의 개수를 return하도록 solution 함수를 완성해주세요. */ //"aya", "ye", "woo", "ma" func solution20(_ babbling:[String]) -> Int { babbling.filter{ $0.replacingOccurrences(of: "aya", with: " ").replacingOccurrences(of: "ye", with: " ").replacin..
[Swift] 코딩테스트 연습! Lv0. 다음에 올 숫자 /* 다음에 올 숫자 - 등차수열 혹은 등비수열 common이 매개변수로 주어질 때, 마지막 원소 다음으로 올 숫자를 return 하도록 solution 함수를 완성해보세요. */ func solution19(_ common:[Int]) -> Int { if common[1]-common[0] == common[2]-common[1] { return common[1]-common[0]+(common.last ?? 0) } else { return (common[1]/common[0])*(common.last ?? 0) } }
[Swift] 코딩테스트 연습! Lv0. 연속된 수의 합 /* 연속된 수의 합 - 연속된 세 개의 정수를 더해 12가 되는 경우는 3, 4, 5입니다. 두 정수 num과 total이 주어집니다. 연속된 수 num개를 더한 값이 total이 될 때, 정수 배열을 오름차순으로 담아 return하도록 solution함수를 완성해보세요. */ func solution18(_ num:Int, _ total:Int) -> [Int] { var result:[Int] = [] if num%2 == 0 { for i in 0..
[Swift] 코딩테스트 연습! Lv0. 종이 자르기 /* 종이 자르기 - 머쓱이는 큰 종이를 1 x 1 크기로 자르려고 합니다. 예를 들어 2 x 2 크기의 종이를 1 x 1 크기로 자르려면 최소 가위질 세 번이 필요합니다. 정수 M, N이 매개변수로 주어질 때, M x N 크기의 종이를 최소로 가위질 해야하는 횟수를 return 하도록 solution 함수를 완성해보세요. */ func solution17(_ M:Int, _ N:Int) -> Int { (M-1) + M*(N-1) }
[Swift] 코딩테스트 연습! Lv0. 문자열 밀기 /* 문자열 밀기 - 문자열 "hello"에서 각 문자를 오른쪽으로 한 칸씩 밀고 마지막 문자는 맨 앞으로 이동시키면 "ohell"이 됩니다. 이것을 문자열을 민다고 정의한다면 문자열 A와 B가 매개변수로 주어질 때, A를 밀어서 B가 될 수 있다면 몇 번 밀어야 하는지 횟수를 return하고 밀어서 B가 될 수 없으면 -1을 return 하도록 solution 함수를 완성해보세요. */ extension String { subscript(_ range: CountableRange) -> String { let start = index(startIndex, offsetBy: max(0, range.lowerBound)) let end = index(start, offsetBy: min(self.count..
[Swift] substring let s = "hello" String(Array(s)[0.. String { let start = index(startIndex, offsetBy: max(0, range.lowerBound)) let end = index(start, offsetBy: min(self.count - range.lowerBound, range.upperBound - range.lowerBound)) return String(self[start.. String { let start = index(startIndex, offsetBy: max(0, range.lowerBound)) return String(self[start...]) } } let s = "hello" s[0.. Index { return self.ind..
[Swift] 코딩테스트 연습! Lv0. 잘라서 배열로 저장하기 /* 잘라서 배열로 저장하기 - 문자열 my_str과 n이 매개변수로 주어질 때, my_str을 길이 n씩 잘라서 저장한 배열을 return하도록 solution 함수를 완성해주세요. */ extension String { func index(from: Int) -> Index { return self.index(startIndex, offsetBy: from) } func substring(with r: Range) -> String { let startIndex = index(from: r.lowerBound) let endIndex = index(from: r.upperBound) return String(self[startIndex.. [String] { var result:[String] = [..