Home P132265. 롤케이크 자르기
Post
Cancel

P132265. 롤케이크 자르기

문제

image

제출 코드

  • 사용 알고리즘 : 브루트포스

처음에 전체 배열에 대해 토핑 수를 모두 헤아린 뒤에, 왼쪽에서부터 하나씩 상대방에게 토핑을 준다고 생각하고 풀면 쉽게 풀린다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
class Solution {
    public int solution(int[] topping) {
        int[] visit_left = new int[10001];
        int[] visit_right = new int[10001];
        int cnt_left=0, cnt_right=0;

        int len = topping.length;
        for(int i=0; i<len; i++){
            if(visit_right[topping[i]]==0) cnt_right++;
            visit_right[topping[i]]++;
        }

        int answer = 0;
        for(int i=0; i<len; i++){
            if(++visit_left[topping[i]]==1) cnt_left++;
            if(--visit_right[topping[i]]==0) cnt_right--;
            if(cnt_left == cnt_right) answer++;
        }

        return answer;
    }
}
This post is licensed under CC BY 4.0 by the author.