요구능력 : 피타고라스의 정리를 아느냐
코드설명 :
입력받은 수 중에 가장 큰 수가 빗면이다.
그럼 가장큰수를 제외하고 나머지 가로, 세로변의 제곱을 더해서 누적해줬다.
그리고 마지막에는 피타고라스의 정리 빗면^2 == 가로^2 + 세로^2 를 이용해서 맞으면 right 틀리면 wrong을 출력했다.
후기 : 한번 제출하고 실패한 다음에 입력숫자 순서는 무작위라는 것을 알게되었고, if문을 많이쓰면 머리쓸필요없지만 쓰기싫어서 while문으로 처리했다.
while true {
var jegop = 0
var i = 0
let arr = readLine()!.split(separator: " ").map{ Int($0)! }
if arr == [0, 0, 0] {
break
}
while i < arr.count {
if i != arr.firstIndex(of: arr.max()!) {
jegop += arr[i] * arr[i]
}
i += 1
}
if jegop == (arr.max()! * arr.max()!) {
print("right")
}else {
print("wrong")
}
}
'Algorithm > 문제풀이_백준' 카테고리의 다른 글
Swift) 백준 1002번 (터렛) (0) | 2021.08.16 |
---|---|
Swift) 백준 3053번 (택시 기하학) (0) | 2021.08.15 |
Swift) 백준 3009번 (네 번째 점) (0) | 2021.08.15 |
Swift) 백준 1085번 (직사각형에서 탈출) (0) | 2021.08.15 |
Swift) 백준 9020번 (골드바흐의 추측) (0) | 2021.08.14 |
댓글