본문 바로가기
알고리즘

[알고리즘] Minimum Operations to Make Array Equal

by keel_im 2021. 4. 6.
반응형

포인트

  • 문제를 보면서 어떻게 풀까를 조금 생각한 것 같습니다. 하지만 생각보다 간단하게 해결했습니다. 
  • 조건을 보시면 값이 같아지려는 수는 n이라는 것을 확인할 수 있습니다.
  • 그러면 최소로 움직이려면 어떤 것을 확인을 하여야 하는가? 를 확인해야 합니다. 저의 아이디어는 홀수로 이어지는 수이기 때문에 가운데를 기준으로 하나를 늘리고 하나를 줄이려면, 즉 가운데를 기준으로 하나씩 늘려가면서 행동하다 보면 값이 같아진다는 아이디어입니다.

% 글쓰면서 말하는 연습이 더 필요하네요.

🧶문서는 항상 수정될 수 있습니다. 비판은 환영합니다. 

python

class Solution:
    def minOperations(self, n: int) -> int:
        data = [2*i+1 for i in range(n)]
        temp = (n//2+1 ) if n&1  else n//2
        summation = 0
        
        for index in range(temp, n):
            summation += (data[index] - n)
            
        return summation

 

반응형

'알고리즘' 카테고리의 다른 글

[알고리즘] 디저트 카페  (0) 2021.04.09
[알고리즘] Determine if String Halves Are Alike  (0) 2021.04.07
[알고리즘] 키패드 누르기  (0) 2021.04.06
[알고리즘] 수영장  (0) 2021.04.05
[알고리즘] 숫자 만들기  (0) 2021.04.05

댓글