728x90
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
String string = scan.next();
int oneCount = 0; //전부 1로 바뀔때
int zeroCount = 0; //전부0으로 바뀔때
if(string.charAt(0) == '1')
oneCount++;
else
zeroCount++;
for(int i = 1; i < string.length(); i++) {
if(string.charAt(i) != string.charAt(i - 1)){
if(string.charAt(i) == '1') oneCount++;
else zeroCount++;
}
}
System.out.println(Math.min(oneCount, zeroCount));
scan.close();
}
}
처음에는 0과 1중에 많이 나온 숫자로 계산하는 식을 써서 틀렸다
그리디 Math.min이용하기
728x90
'CS > Algorithm' 카테고리의 다른 글
[ JAVA / 백준 : 13305 ] 주유소 (0) | 2021.07.14 |
---|---|
[백준:1789] 수들의 합 - JAVA (백준 : InputMismatch오류) (0) | 2021.07.13 |
[백준 : 11399] ATM - JAVA (0) | 2021.07.12 |
[백준 : 11725] 트리의 부모 찾기 - JAVA (0) | 2021.05.23 |
[백준 : 7562] 나이트의 이동 - JAVA (0) | 2021.05.23 |