안녕하세요. 오늘은 프로그래머스 멀쩡한 사각형 문제를 풀어보겠습니다! 이 문제 풀다가 머리가 터질뻔했는데요... 중고딩때 도형문제를 더 공부했더라면 수월하게 풀었을듯합니다 ㅠㅠ 결과적으로 보면 풀이가 참 간단합니다! 우선 서로가 최대공약수가 없는 도형(가로지르는 선이 정수인 n,m의 (n,m)인 지점을 지나게 하지 않기 위해)에서 w+h-1이 망가지는 도형의 수이다! 그러므로 최소공배수를 구해 도형을 쪼개고 w+h-1을 구하고 최소공배수를 다시곱해 전체 블록의 갯수에서 빼시면 문제를 해결하실 수 있습니다! import Foundation func gcd(_ a: Int64, _ b: Int64) -> Int64 { if b == 0 { return a } else { return gcd(b, a%b) }..