inblog logo
|
silver
    알고리즘문제풀기

    [알고리즘문제풀기] 조건에 맞게 수열 변환하기 2

    silver's avatar
    silver
    Sep 26, 2025
    [알고리즘문제풀기] 조건에 맞게 수열 변환하기 2
    Contents
    문제내가 작성한 정답다른 사람들의 정답

    문제

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

    내가 작성한 정답

    class Solution { public int solution(int[] arr) { int answer = 0; while (true){ boolean b = false; for(int i =0; i<arr.length; i++){ int a = arr[i]; if(a>=50 && a%2==0) { arr[i] /= 2; b = true; } else if (a<50 && a%2==1) { arr[i] = a * 2 + 1; b = true; } } if(!b) break; answer++; } return answer; } }

    다른 사람들의 정답

    import java.util.Arrays; class Solution { public int solution(int[] arr) { return Arrays.stream(arr).map(i -> cntAction(i)).max().getAsInt(); } private int cntAction(int n) { int cnt = 0; boolean flag = true; while (flag) { if (n % 2 == 0 && 50 <= n) { n /= 2; cnt++; } else if (n % 2 == 1 && n < 50) { n *= 2; n += 1; cnt++; } else { flag = false; } } return cnt; } }
    Share article

    silver

    RSS·Powered by Inblog