WILT-200506

최대 1 분 소요

오늘 한 일


  1. 알고리즘
    • 알고리즘 강의 듣기: 순환함수(recursion) 응용: Counting cells in a blob
    • 이틀 전 실패했던 leetcode PowerOfFour 순환함수로 풀기 성공.
    • 확실히 순환함수를 사용하니 코드가 간결해지는 효과가 있었다.
        // 자연수(음수 포함)을 인수로 받아 4의 제곱수인지 여부를 boolean으로 반환
      class Solution {
        public boolean isPowerOfFour(int num) {
        if(num<1) return false; // 음수 포함 1 이하 자연수는 4의 제곱수가 될 수 없다
        if(num>=4 && num%4==0) return isPowerOfFour(num/4); // 4로 나누어 떨어지는데 4보다 큰 수는 다시 4로 나누기, 그렇지 않으면 이미 4의 제곱수가 아님
        else return num==1; // 4의 제곱수 4로 나누기 반복하면 마지막엔 반드시 4/4=1이 되므로 num==1의 결과가 곧 4의 제곱수인지 여부가 됨
        }
      }
      

댓글남기기