We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
💬 Idea
💬 풀이
var useHandsString: String = "" var currentLPosition: String = "*" var currentRPosition: String = "#" func solution(_ numbers:[Int], _ hand:String) -> String { for i in numbers { switch i { case 1, 4, 7: leftPress(num: i) case 2, 5, 8, 0: let distanceByLeft = calDistance(num: i, currentPosition: currentLPosition) let distanceByRight = calDistance(num: i, currentPosition: currentRPosition) if distanceByLeft == distanceByRight { if hand == "left" { leftPress(num: i) } else { rightPress(num: i) } } else if distanceByLeft > distanceByRight { rightPress(num: i) } else { leftPress(num: i) } case 3, 6, 9: rightPress(num: i) default: print("default") } } return useHandsString } func leftPress(num: Int) { useHandsString += "L" currentLPosition = String(describing: num) } func rightPress(num: Int) { useHandsString += "R" currentRPosition = String(describing: num) } func calDistance(num: Int, currentPosition: String) -> Int { var numLocation: [Int] = [] var currentLocation: [Int] = [] if num == 0 { numLocation = [3, 1] } else { numLocation = calPosition(num: num) } if currentPosition == "*" { currentLocation = [3, 0] } else if currentPosition == "#" { currentLocation = [3, 2] } else { currentLocation = calPosition(num: Int(currentPosition)!) } return abs(numLocation[0] - currentLocation[0]) + abs(numLocation[1] - currentLocation[1]) } func calPosition(num: Int) -> [Int] { if num == 0 { return [3, 1] } else { return [(num - 1) / 3, ((num - 1) % 3)] } }
소요시간 : 40분
소요시간
💬 알게된 문법
swift에서 절댓값을 반환할 수 있는 함수
주어진 숫자의 절대값을 반환
x의 절대값은 같은 형식으로 표현할 수 있어야 한다. 특히, 부호 있는 고정 너비 정수형의 최소값의 절대값은 표현할 수 없다.
let x = Int8.min // x == -128 let y = abs(x) // Overflow error
The text was updated successfully, but these errors were encountered:
#6 - 키패드 누르기 문제 풀이
5b24d86
hwangJi-dev
No branches or pull requests
📌 TODO
키패드 누르기
💬 Idea
왼쪽, 오른쪽의 거리를 계산한 후 거리가 더 짧은 손으로 키패드를 누를 수 있도록 구현하였다.
💬 풀이
소요시간
: 40분💬 알게된 문법
✅ abs
swift에서 절댓값을 반환할 수 있는 함수
주어진 숫자의 절대값을 반환
x의 절대값은 같은 형식으로 표현할 수 있어야 한다. 특히, 부호 있는 고정 너비 정수형의 최소값의 절대값은 표현할 수 없다.
The text was updated successfully, but these errors were encountered: