코딩공부/프로그래머스

※[프로그래머스]Lv.0 조건에 맞게 수열 변환하기 2 C# (SequenceEqual)

usingsystem 2023. 6. 8. 11:02
728x90

https://school.programmers.co.kr/learn/courses/30/lessons/181881?language=csharp 

 

프로그래머스

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

programmers.co.kr

소스코드

using System;
using System.Collections.Generic;
using System.Linq;
public class Solution
{
    public int solution(int[] arr)
    {
        int min = 0;

        while (true)
        {
            int[] temp = new int[arr.Length];
            Array.Copy(arr, 0, temp, 0, 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 == 1)
                    arr[i] = (arr[i] * 2) + 1;
            }

            if (temp.SequenceEqual(arr))
                break;

            min++;
        }
        return min;
    }
}
728x90