[leetcode] Minimum Operations to Make Array Equal

임택·2021년 4월 6일
0

알고리즘

목록 보기
61/63

problem

code: This is math

class Solution {
    public int minOperations(int n) {
        if (n % 2 == 1) {
            int x = n/2;
            return x * (x + 1);
        } else {
            int x = n/2;
            int y = n/2 - 1;
            return x + y * (y + 1);
        }
        // count
        // i=1, 1=> 0
        // i=2, 1 3 => 2 2: 1
        // i=3, 1 3 5 => 2 3 4: 1 => 3 3 3: 1
        // i=4, 1 3 5 7 => 2 4 4 6: 2 => 3 4 4 5: 1 => 4 4 4 4: 1
        
        // count for each i 
        // 2: 1
        // 3: 1 1
        // 4: 2 1 1
        // 5: 2 2 1 1
        // 6: 3 2 2 1 1
        // 7: 3 3 2 2 1 1
        // 8: 4 3 3 2 2 1 1

    }
    
}

Time: O(1)
Space: O(1)

profile
캬-!

0개의 댓글