본문 바로가기

분류 전체보기

[Swift] 코딩테스트 연습! Lv0. 점의 위치 구하기 /* 점의 위치 구하기 - 사분면은 한 평면을 x축과 y축을 기준으로 나눈 네 부분입니다. 사분면은 아래와 같이 1부터 4까지 번호를매깁니다. x 좌표와 y 좌표가 모두 양수이면 제1사분면에 속합니다. x 좌표가 음수, y 좌표가 양수이면 제2사분면에 속합니다. x 좌표와 y 좌표가 모두 음수이면 제3사분면에 속합니다. x 좌표가 양수, y 좌표가 음수이면 제4사분면에 속합니다. x 좌표 (x, y)를 차례대로 담은 정수 배열 dot이 매개변수로 주어집니다. 좌표 dot이 사분면 중 어디에 속하는지 1, 2, 3, 4 중 하나를 return 하도록 solution 함수를 완성해주세요. */ func solution28(_ dot:[Int]) -> Int { guard dot.count > 1 else {..
[Swift] 코딩테스트 연습! Lv0. 구슬을 나누는 경우의 수 /* 구슬을 나누는 경우의 수 - 머쓱이는 구슬을 친구들에게 나누어주려고 합니다. 구슬은 모두 다르게 생겼습니다. 머쓱이가 갖고 있는 구슬의 개수 balls와 친구들에게 나누어 줄 구슬 개수 share이 매개변수로 주어질 때, balls개의 구슬 중 share개의 구슬을 고르는 가능한 모든 경우의 수를 return 하는 solution 함수를 완성해주세요. */ func solution27(_ balls:Int, _ share:Int) -> Int { var mother:Int = 1 var child:Int = 1 for i in 1...share { child *= (balls+1-i) if child%i == 0 { child /= i } else { mother *= i } } return chi..
[Swift] 코딩테스트 연습! Lv0. 가위 바위 보 /* 가위 바위 보 - 가위는 2 바위는 0 보는 5로 표현합니다. 가위 바위 보를 내는 순서대로 나타낸 문자열 rsp가 매개변수로 주어질 때, rsp에 저장된 가위 바위 보를 모두 이기는 경우를 순서대로 나타낸 문자열을 return하도록 solution 함수를 완성해보세요. */ func solution26(_ rsp:String) -> String { String(rsp.map { $0=="2" ? "0" : $0=="0" ? "5" : "2" }.joined()) }
[Swift] 코딩테스트 연습! Lv0. 모스부호 (1) /* 모스부호 (1) - 머쓱이는 친구에게 모스부호를 이용한 편지를 받았습니다. 그냥은 읽을 수 없어 이를 해독하는 프로그램을 만들려고 합니다. 문자열 letter가 매개변수로 주어질 때, letter를 영어 소문자로 바꾼 문자열을 return 하도록 solution 함수를 완성해보세요. 모스부호는 다음과 같습니다. morse = { '.-':'a','-...':'b','-.-.':'c','-..':'d','.':'e','..-.':'f', '--.':'g','....':'h','..':'i','.---':'j','-.-':'k','.-..':'l', '--':'m','-.':'n','---':'o','.--.':'p','--.-':'q','.-.':'r', '...':'s','-':'t','..-':'..
[Swift] 코딩테스트 연습! Lv0. 개미 군단 /* 개미 군단 - 개미 군단이 사냥을 나가려고 합니다. 개미군단은 사냥감의 체력에 딱 맞는 병력을 데리고 나가려고 합니다. 장군개미는 5의 공격력을, 병정개미는 3의 공격력을 일개미는 1의 공격력을 가지고 있습니다. 예를 들어 체력 23의 여치를 사냥하려고 할 때, 일개미 23마리를 데리고 가도 되지만, 장군개미 네 마리와 병정개미 한 마리를 데리고 간다면 더 적은 병력으로 사냥할 수 있습니다. 사냥감의 체력 hp가 매개변수로 주어질 때, 사냥감의 체력에 딱 맞게 최소한의 병력을 구성하려면 몇 마리의 개미가 필요한지를 return하도록 solution 함수를 완성해주세요. */ func solution23(_ hp:Int) -> Int { let five:Int = 5 let three:Int = 3 ..
[Swift] 코딩테스트 연습! Lv0. 순서쌍의 개수 /* 순서쌍의 개수 - 순서쌍이란 두 개의 숫자를 순서를 정하여 짝지어 나타낸 쌍으로 (a, b)로 표기합니다. 자연수 n이 매개변수로 주어질 때 두 숫자의 곱이 n인 자연수 순서쌍의 개수를 return하도록 solution 함수를 완성해주세요. */ func solution22(_ n: Int) -> Int { (1...n).filter { n % $0 == 0 }.count } func solution21(_ n:Int) -> Int { var result: Int = 1 if n == 1 { return 1 } for i in 1...n/2 { if n % i == 0 { result += 1 } } return result }
[Swift] 코딩테스트 연습! Lv0. 진료 순서 정하기 /* 진료 순서 정하기 - 외과의사 머쓱이는 응급실에 온 환자의 응급도를 기준으로 진료 순서를 정하려고 합니다. 정수 배열 emergency가 매개변수로 주어질 때 응급도가 높은 순서대로 진료 순서를 정한 배열을 return하도록 solution 함수를 완성해주세요. */ func solution20(_ emergency:[Int]) -> [Int] { emergency.map { emergency.sorted(by: > ).firstIndex(of: $0)!+1 } } func solution19(_ emergency:[Int]) -> [Int] { var dic:Dictionary = [:] var i = 1 emergency.sorted{ $0 > $1 }.map { dic[$0] = i i += ..
[Swift] 코딩테스트 연습! Lv0. 외계행성의 나이 /* 외계행성의 나이 - 우주여행을 하던 머쓱이는 엔진 고장으로 PROGRAMMERS-962 행성에 불시착하게 됐습니다. 입국심사에서 나이를 말해야 하는데, PROGRAMMERS-962 행성에서는 나이를 알파벳으로 말하고 있습니다. a는 0, b는 1, c는 2, ..., j는 9입니다. 예를 들어 23살은 cd, 51살은 fb로 표현합니다. 나이 age가 매개변수로 주어질 때 PROGRAMMER-962식 나이를 return하도록 solution 함수를 완성해주세요. */ func solution18(_ age:Int) -> String { let alphabet = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j"] return String(age).map{alp..