[Java] 백준 1439번 뒤집기

2022. 4. 11. 09:47
728x90

https://www.acmicpc.net/problem/1439

 

1439번: 뒤집기

다솜이는 0과 1로만 이루어진 문자열 S를 가지고 있다. 다솜이는 이 문자열 S에 있는 모든 숫자를 전부 같게 만들려고 한다. 다솜이가 할 수 있는 행동은 S에서 연속된 하나 이상의 숫자를 잡고 모

www.acmicpc.net

이번 문제는 이전 값을 계속 유지하면서 값이 바뀌는 것을 체크 했습니다.

값이 바뀔 때마다 바뀐 값의 카운트를 증가시켜 줬습니다.

그 후, 2가지 값을 비교하여 작은 것을 출력했습니다.

 

package BJ;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class BJ_뒤집기 {
	static String S;
	public static void main(String[] args) throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		S = br.readLine();
		int zero = 0;
		int one = 0;
		
		char pre = S.charAt(0);
		if(pre == '0') {
			zero++;
		}else {
			one++;
		}
		for (int i = 1; i < S.length(); i++) {
			if(pre != S.charAt(i)) {
				if(S.charAt(i) == '0') {
					zero++;
					pre = S.charAt(i);
				}else {
					one++;
					pre = S.charAt(i);
				}
			}
		}
		if(zero == 0 || one == 0) {
			System.out.println(0);
		}else if(zero > one) {
			System.out.println(one);
		}else if (zero <= one) {
			System.out.println(zero);
		}
	}

}

 

Ysik Github : https://github.com/Y1sik/Algorithm/blob/main/BJ/BJ_%EB%92%A4%EC%A7%91%EA%B8%B0.java

반응형

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

[Java] 백준 1966번 프린터 큐  (0) 2022.04.13
[Java] 백준 7567번 그릇  (0) 2022.04.12
[Java] 백준 1373번 2진수 8진수  (0) 2022.04.10
[Java] 백준 10820번 문자열 분석  (0) 2022.04.09
[Java] 백준 5430번 AC  (0) 2022.04.08

BELATED ARTICLES

more