반응형
문제 출처
https://www.acmicpc.net/problem/1013
정답 풀이
- 정규식을 이용한 문자열을 판별해야겠다는 생각을 했다.
- ^는 문자열의 시작을, $는 문자열의 끝을 의미한다. 이로써 문자열이 패턴과 완전히 일치하는지 확인할 수 있다.
- |로 패턴 `100+1+`와 `01`을 선택적으로 매칭하고, 이를 반복해서 사용할 수 있도록 `+`를 사용한다.
정답 코드
const input = require('fs').readFileSync('/dev/stdin').toString().trim().split('\n');
const n = Number(input.shift());
function solution(n, input){
for(let i=0; i<n; i++){
const regex = /^(100+1+|01)+$/
let answer = regex.test(input[i])
if(answer) console.log('YES')
else console.log('NO')
}
}
solution(n, input)
반응형
'알고리즘 문제 풀기' 카테고리의 다른 글
백준 9663: N-Queen - javascript(백트래킹) //좋은 문제 (0) | 2024.09.21 |
---|---|
백준 15649 : N과 M(1) - javascript(백트래킹) (0) | 2024.09.21 |
백준 2293: 동전 1 - javascript(dp) (1) | 2024.09.15 |
백준 1167: 트리의 지름 - javascript(dfs) (1) | 2024.09.13 |
프로그래머스: [PCCP 기출문제] 2번 퍼즐 게임 챌린지- javascript(이진탐색) (0) | 2024.09.12 |