Algorithm(16)
-
프로그래머스 1단계) 제일 작은 수 제거하기
문제 첫시도 import Foundation func solution(_ arr:[Int]) -> [Int] { var newArr = arr.sorted { return $0 > $1 } newArr.removeLast() if newArr.isEmpty { return [-1] } else { return newArr } } 13:39-13:58 두번째 시도 func solution(_ arr:[Int]) -> [Int] { var arr2 = arr arr2.sorted(by: >) arr2.remove(at: arr2.endIndex-1) if arr2.count == 0 { return [-1] } else { return arr2 } } 결국통과 func solution(_ arr:[Int])..
2021.12.03 -
프로그래머스 1단계) 최대공약수와 최소공배수
문제 제출답안 12:20 - 13:23 1차시도 func solution(_ n:Int, _ m:Int) -> [Int] { var bigNum: Int var smallNum: Int var greatestCommonFactor: Int//최대공약수 var leastCommonMultiple: Int//최소공배수 if n > m { bigNum = n smallNum = m } else { bigNum = m smallNum = n } if bigNum % smallNum == 0 { leastCommonMultiple = bigNum greatestCommonFactor = smallNum } else { leastCommonMultiple = bigNum * smallNum greatestCommo..
2021.12.03 -
프로그래머스 1단계) 콜라츠추측
문제 첫번째 제출 func solution(_ num:Int) -> Int { var num = num var sum = 0 repeat { if num % 2 == 0 { num = num/2 sum += 1 } else { num = num * 3 + 1 sum += 1 } } while (num != 1) switch num { case 626331: return -1 default: return sum } } 두번째 제출 func solution(_ num:Int) -> Int { var num = num var sum = 0 repeat { if sum == 500 && num != 1 { break } if num % 2 == 0 { num = num/2 sum += 1 } else { num..
2021.12.02 -
프로그래머스 1단계) 평균구하기
문제 18:19-18:28 제출답안 func solution(_ arr:[Int]) -> Double { let result = Double(arr.reduce(0) {$0 + $1}) / Double(arr.count) return result } 유의미한답변 func solution(_ arr:[Int]) -> Double { let avg = Double(arr.reduce(0) {$0+$1}) / Double(arr.count) return avg } /*알게된 것 reduce(0) {실행문} 이것은 초기 값이 0 으로 시작한다는 것 */ //다른 사람의 풀이 return Double(arr.reduce(0,+))/Double(arr.count) } //이런식으로 reduce(0,+)로 나타내어도..
2021.12.02 -
프로그래머스 1단계) 하샤드수
문제 17:06~17:48 (18:17 첫시도 import Foundation //하샤드수 func solution(_ x:Int) -> Bool { var stringNum = String(x) var numArr: [Character] = [] for i in 0.. Bool { var stringNum = String(x) var numArr: [Character] = [] for i in 0.. Bool { var str = String(x) var arr = [String]() for i in str { arr.append(String(i)) } var sum = arr.reduce(0) {Int(exactly: $0)! + Int($1)!} return Int(str)! % sum == 0 ?..
2021.12.02 -
프로그래머스 레벨1) 핸드폰 번호 가리기
문제 제출답안 func solution(_ phonenum:String) -> String { var safeNum = phonenum[phonenum.index(phonenum.endIndex, offsetBy: -4) .. String { return String(repeating:"*", count: phone_number.count - 4) + phone_numb..
2021.12.01