JavaScript
[JavaScript] 배열에서 연속적인 숫자 뽑아내기
잉여개발자
2022. 12. 22. 15:17
반응형
실생활에서 자주 접할 수 있는데, 비밀번호, 아이디, .... (자주..? 는 아닐지도)에서 패턴 반복을
막기 위해서 사용할 경우가 있다.
정규식을 사용하면 간단하게 해결할 수 있는 문제일 수 있지만,
만약 0 ~ 9까지만 숫자가 있는게 아닌 0 ~ 100000000000 이라면?
( 과장을 보탰다. 실제로 저기서 뽑는다면 엉청 오래걸릴지도...)
정규식으로 어썸하게 해결하는 정규식 굇수분들이 있을 수 있지만 본인은 못하기 때문에 반복문을
사용해서 해결하였다.
function func(array, goal) {
for(let i = 0; i < array.length; i ++) {
let cnt = 1;
let num = array[i];
while(true)
if(array.includes(++num)) cnt++;
else break;
if(cnt === goal)// 연속된 숫자가 목표개 있음
}
}
for문 안에 while문을 반복하는 방식으로 해결했다.
만약 1, 2, 3, 4, 5, 6, 7 연속되고 goal이 4일 경우
4, 5, 6, 7이 if문에 들어가게 될 것이다.
반응형