[Algorithm study] 백준 1439번

SeokHwan An·2022년 1월 16일
0

문제 출처 : https://www.acmicpc.net/problem/1439

문제 접근

문제에서 제시된 0과1로 된 수열을 연속적으로 이루어진 0과 1을 뒤집어서 주어진 수열을 0으로만 혹은 1으로만 이루어지도록 하는데 최소한의 횟수를 구하는 문제입니다. 즉, 주어진 수열에서 0의 덩어리 수와 1의 덩어리 수 중 적은 덩어리 수를 나타내는 것이 문제를 해결하는 방법입니다.

소스코드

import java.util.*;

public class Main {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner sc = new Scanner(System.in);
		String[] arr = sc.nextLine().split("");
		int one = 0, zero = 0;
		String num = arr[0];
		if (num.equals("0") ) {
			zero++;
		}
		else if(num.equals("1")) {
			one++;
		}
		for(int i = 1; i < arr.length; i++) {
			String next = arr[i];
			if(next.equals(num)) {
				continue;
			}
			else {
				if(arr[i].equals("0")) {
					zero++;
				}
				else if(arr[i].equals("1")) {
					one++;
				}
				num = arr[i];
			}
		}
		if (one >= zero) {
			System.out.println(zero);
		}
		else {
			System.out.println(one);
		}
	}
}

0개의 댓글