울음참고 개발공부
728x90

 

 

https://school.programmers.co.kr/learn/courses/30/lessons/181881

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

 


 

 

import java.util.*;

class Solution {
    public int solution(int[] arr) {
        int[] beforeArr = new int[arr.length]; 
        int x = 0;

        while (!Arrays.equals(beforeArr, arr)) {
            beforeArr = Arrays.copyOf(arr, arr.length);
            for (int i = 0; i < arr.length; i++) {
                if (arr[i] >= 50 && arr[i] % 2 == 0) {
                    arr[i] = arr[i] / 2;
                } else if (arr[i] <= 50 && arr[i] % 2 != 0) {
                    arr[i] = arr[i] * 2 + 1;
                }
            }
    
            x++;
        }

        return x-1; 
    }
}

 

 


 

arr(x) 와 arr(x+1) 을 비교하기 위해 for 문을 돌기전 배열을 생성하고 , for 문 후에 배열을 비교했다. 

 

배열의 비교 - Arrays.equals(arr1, arr2)

두 배열 arr1과 arr2 가 같은 길이와 같은 위치에 같은 원소를 가지는지 비교할때

Arrays.equals(arr1, arr2);


 

 

 

728x90
profile

울음참고 개발공부

@메각이

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!