250x250
Notice
Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 막내의막무가내 안드로이드
- 부스트코스
- 막내의막무가내 플러터 flutter
- 안드로이드
- 막내의막무가내 코틀린
- 막내의 막무가내
- 막내의막무가내 안드로이드 코틀린
- 막내의막무가내 코틀린 안드로이드
- Fragment
- 안드로이드 sunflower
- 부스트코스에이스
- 막내의막무가내 SQL
- 막내의막무가내 목표 및 회고
- 막무가내
- 안드로이드 Sunflower 스터디
- flutter network call
- 막내의막무가내
- 프래그먼트
- 막내의막무가내 프로그래밍
- 주엽역 생활맥주
- 막내의막무가내 안드로이드 에러 해결
- 막내의막무가내 코볼 COBOL
- 막내의막무가내 rxjava
- 프로그래머스 알고리즘
- 막내의막무가내 플러터
- 막내의 막무가내 알고리즘
- 막내의막무가내 일상
- 2022년 6월 일상
- 막내의막무가내 알고리즘
- 주택가 잠실새내
Archives
- Today
- Total
막내의 막무가내 프로그래밍 & 일상
[알고리즘] 백준 1439 뒤집기 -그리디- 자바 코틀린 본문
728x90
백준 그리디유형의 문제인 뒤집기를 풀어봤습니다. ㅎㅎ
연속된 숫자를 한번에 뒤집을 수 있는데요 (0 or 1)
최소한으로 뒤집어서 모두 같은 숫자를 만들어야합니다.
풀이방법은 0과 1의 연속된 숫자의 묶음이 더 적은 쪽의 묶음의 개수를 답으로 출력해주면 됩니다.
풀이는 다음과 같습니다.
[Java]
import java.util.Scanner;
class Main {
private static String S;
private static int[] nums;
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
S = sc.next();
nums = new int[S.length()];
for (int i = 0; i < S.length(); i++) {
nums[i] = Integer.parseInt(String.valueOf(S.charAt(i)));
}
int zeroCnt = 0;
int oneCnt = 0;
int prevNum = -1;
for (int i = 0; i < nums.length; i++) {
int num = nums[i];
if (num != prevNum) {
if (num == 0) {
zeroCnt++;
} else { //1
oneCnt++;
}
}
prevNum = num;
}
System.out.println(Math.min(zeroCnt, oneCnt));
}
}
[Kotlin]
import java.util.*
private lateinit var S: String
private lateinit var nums: IntArray
fun main(args: Array<String>) {
val sc = Scanner(System.`in`)
S = sc.next()
nums = IntArray(S.length)
for (i in S.indices) {
nums[i] = S.get(i).toString().toInt()
}
var zeroCnt = 0
var oneCnt = 0
var prevNum = -1
for (i in nums.indices) {
val num = nums[i]
if (num != prevNum) {
if (num == 0) {
zeroCnt++
} else { //1
oneCnt++
}
}
prevNum = num
}
println(Math.min(zeroCnt, oneCnt))
}
댓글과 공감은 큰 힘이 됩니다. 감사합니다. !!
728x90
'알고리즘 > 그리디' 카테고리의 다른 글
[알고리즘] 백준 10162 전자레인지 -그리디- 자바 (2) | 2021.05.11 |
---|---|
[알고리즘] 백준 13305 주유소 -그리디- 자바 코틀린 (2) | 2021.04.09 |
[알고리즘] 백준 11000 강의실 배정 -그리디, 우선순위큐- 자바 (2) | 2021.03.02 |
[알고리즘] 백준 1107 리모컨 -브루트포스, 그리디- 자바 (0) | 2020.11.28 |
[알고리즘] 백준 2847 게임을 만든 동준이 -그리디- (0) | 2020.11.19 |
Comments