[JavaScript] 배열에서 연속적인 숫자 뽑아내기

2022. 12. 22. 15:17·JavaScript
반응형

실생활에서 자주 접할 수 있는데, 비밀번호, 아이디, .... (자주..? 는 아닐지도)에서 패턴 반복을

막기 위해서 사용할 경우가 있다.

정규식을 사용하면 간단하게 해결할 수 있는 문제일 수 있지만,

만약 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문에 들어가게 될 것이다.

 

반응형
저작자표시 비영리 변경금지 (새창열림)

'JavaScript' 카테고리의 다른 글

[JavaScript] every, some  (1) 2023.01.12
[JavaScript] 재귀함수 vs 반복문  (1) 2022.12.29
[JavaScript] 함수형 프로그래밍 - 함수형으로 전환하기_1  (0) 2022.11.13
[JavaScript] 함수형 프로그래밍 - 개요  (0) 2022.11.12
[JavaScript] Event의 target과 currentTarget  (0) 2022.11.01
'JavaScript' 카테고리의 다른 글
  • [JavaScript] every, some
  • [JavaScript] 재귀함수 vs 반복문
  • [JavaScript] 함수형 프로그래밍 - 함수형으로 전환하기_1
  • [JavaScript] 함수형 프로그래밍 - 개요
잉여개발자
잉여개발자
풀스택 개발자를 목표로 잉여롭게 개발 공부도 하면서 다양한 취미 생활도 즐기고 있는 잉여 개발자입니다.
  • 잉여개발자
    잉여로운 개발일지
    잉여개발자
    • 분류 전체보기 (789)
      • 개발정보 (36)
      • 개발환경 (7)
      • 개발생활 (19)
      • React (141)
        • 이론 (23)
        • 기능 (12)
        • 실험실 (88)
        • 버그 (6)
        • 패스트캠퍼스 (9)
        • Npm (3)
      • React Native (28)
        • 공통 (6)
        • TypeScript (3)
        • JavaScript (18)
        • 버그 (1)
      • Next.js (30)
        • 이론 (13)
        • 실험실 (13)
        • 버그 (3)
      • Web (35)
      • 알고리즘 (202)
        • 풀이 힌트 (39)
      • JavaScript (47)
      • TypeScript (29)
        • 기초 (27)
        • 실험실 (2)
      • Node.js (13)
        • 이론 (0)
        • 기능 (3)
        • 실험실 (9)
        • 버그 (1)
      • 도커 (4)
      • CCNA (22)
        • 이론 (4)
        • 문제 (18)
      • 취미생활 (167)
        • 잉여로운 칵테일 (2)
        • 잉여의 식물키우기 (130)
        • 잉여로운 여행기 (11)
        • 잉여의 제2외국어 (21)
        • 잉여로운 책장 (2)
      • Java (1)
        • Java의 정석 (1)
      • 꿀팁 공유 (3)
  • 태그

    ChatGPT
    프로그래머스
    리얼학습일기
    CCNA
    식물
    ReactNative
    바질 키우기
    다이소
    redux
    리액트
    영어회화
    react
    알고리즘
    네이버 부스트캠프
    typescript
    next.js
    타입스크립트
    타일러영어
    Docker
    네트워크
    Node.js
    webpack
    CSS
    리얼클래스
    영어독학
    덤프
    자바스크립트
    Babel
    바질
    javascript
  • hELLO· Designed By정상우.v4.10.1
잉여개발자
[JavaScript] 배열에서 연속적인 숫자 뽑아내기
상단으로

티스토리툴바