전체 글(315)
-
프로그래머스 1단계) 정수 내림차순으로 배치하기
문제 15:36 - 16:47 1차 시도 import Foundation func solution(_ n:Int) -> Int{ var num = String(n)//"29463" var arr = [String]() var result = "" for i in num { arr.append(String(i)) arr.sort(by: >) result = arr.joined(separator: "") } return Int(result) ?? 1 } 최종답안(통과) import Foundation func solution(_ n:Int64) -> Int64{ let num = String(n)//"29463" var arr = [String]() var result = "" for i in num { a..
2021.12.05 -
프로그래머스 1단계) 정수 제곱근 판별
문제 첫번째 시도 func solution(_ n:Int64) -> Int64 { var x:Int if x > 0 && n == x * x { return (x + 1) * (x + 1) } x > 0 && n != x * x { return -1 } } 14:30 - 15:00 제출통과 import Foundation func solution(_ n:Int64) -> Int { var num = Int(pow(Double(n), 0.5)) let result = n == num * num ? (num + 1) * (num + 1) : -1 return result } 유의미한 답변 //Q10.정수 제곱근 판별 import Foundation func solution(_ n:Int64) -> Int {..
2021.12.03 -
프로그래머스 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