멀쩡한 사각형을 풀어보자

JD·2021년 10월 25일
0

중요사항

  • 대각선이 지나는 사각형 갯수

📢멀쩡한 사각형

대각선을 지나지않는 사각형의 갯수를 구하라

📢풀이

참고 블로그 : 계산식 참고

  • 대각선을 지나는 사각형의 갯수는 (w+h-g) 이다 g: w와 h의 최대공약수
  • 함수를 만들까 하다 do while()사용
  • 나머지가 0이 될때까지 반복 (최대공약수)
  • 사용가능한 사각형 갯수 반환

코드사진

class Solution {
    public long solution(int w, int h) {
        long w1 = w;
        long h1 = h;
        int mod = 0;
        do{
            
            mod = (w%h);
            w = h;
            h = mod;
            
        }while(mod!=0);
        
        return (w1*h1)-(w1+h1-w);
    }
}

📢마치며

계산식을 알아낼려고 그림판으로 잘라서 이어보고 계속 더해보고 대각선 길이 해보고 다해봤는데 알고보니 최대 공약수를 이용해서 푸는 문제였다 계산식을 알고나니 그다음 부턴 금방 풀리긴했지만 계산식을 스스로 못알아낸게 아쉽긴 하다 코테 문제중에 은근 최대공약수는 문제에 많이 사용되는거 같던데 다음번에는 계산식을 알아낼때 최대공약수도 필수적으로 써야겠다

📢출처

👍프로그래머스

0개의 댓글