이런게,,, 코딩 테스트 문제인가 의문이 드는 문제,, 🙄🙄
딱히 알고리즘도 필요없고 수학적으로 문제를 얼마나 이해했는지가 중요한,, ㅜ 코드도 얼탱이 없이 짧다 ㅋㅋ
import math
def solution(w,h):
total_num = w * h
gcd_num = math.gcd(w,h)
xbox = (w+h) - gcd_num
answer = total_num-xbox
return answer
📌 고려해야할 점
그림을 직접 그려서 첨부하면 좋은데 새벽에 작성 중이니 생각나면,,, 첨부해야지 ^^하하
쉽게 말하면 좌표위에 사각형을 올려둔다고 생각해보자.
그렇다면 대각선을 그었을 때 좌표를 이용해서 대각선이 지나가는 사각형을 정확하게 판별할 수 있는데, 이제 여기서부터는 그냥 수학 문제다.. 알고리즘 따위는 필요없다. 막상 구현해놓고 어이없어서 다른 분들 찾아보니 대부분 다들 최대공약수
이용하여 풀었는데 그 방법이 아무리봐도 최선인 것 같다. 특히, 파이썬을 사용하면 math 라이브러리를 이용해서 바로 구할 수 있기 때문이다.. ㅎ
내가 최종적인 이해를 정리하는데 도움이 된 분의 링크를 첨부한다.
👩💻 링크 - 노는게 제일 좋아 티스토리
엄청 좋은 문제인지는 모르겠으나 이렇게 수학적인 문제도 경험해보면 좋을 듯?하다 아마