[백준 알고리즘] Node.js 1439. 뒤집기
2023. 8. 10. 13:31ㆍ코딩연습
1. 문제
https://www.acmicpc.net/problem/1439
1439번: 뒤집기
다솜이는 0과 1로만 이루어진 문자열 S를 가지고 있다. 다솜이는 이 문자열 S에 있는 모든 숫자를 전부 같게 만들려고 한다. 다솜이가 할 수 있는 행동은 S에서 연속된 하나 이상의 숫자를 잡고 모
www.acmicpc.net
2. 풀이
- 0과 1로만 이루어진 문자열에 대해서 모든 숫자를 같게 만들기 위해 뒤집어야 하는 최소 횟수를 찾는 문제이다.
- 0으로 나눈 배열과 1로 나눈 배열의 길이를 비교하여 작은 값을 출력해야겠다고 생각.
const inputs = require('fs').readFileSync('/dev/stdin').toString().trim();
// 0 으로 split 한 배열의 길이
const splitByZeroLength = inputs.split("0").filter(item => item !== '').length;
// 1로 split한 배열의 길이
const splitByOneLength = inputs.split("1").filter(item => item !== '').length;
// 최소값 출력
console.log(Math.min(splitByZeroLength, splitByOneLength));
- "0", "1"로 한 이유는 테스트 케이스를 문자형태로 받았기 때문이고,
- filter() 를 사용한 이유는 split()을 사용하게 되면 '' 형태로 받아지기 때문에 필요없는 '' 부분을 걸러내기 위함이다.
'코딩연습' 카테고리의 다른 글
[프로그래머스] 더 맵게 - JavaScript (0) | 2023.08.18 |
---|---|
[백준 알고리즘] Node.js 1531. 투명 (0) | 2023.08.10 |
[백준 알고리즘] Node.js 1417. 국회의원 선거 (0) | 2023.08.07 |
[프로그래머스] 주차 요금 계산 (0) | 2023.08.07 |
[백준 알고리즘] Node.js 1402. 아무래도이문제는A번난이도인것같다 (0) | 2023.08.07 |