반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- TypeScript
- next.js
- 맨해튼거리예제
- 정렬 알고리즘
- 좌표거리구하기
- 키패드누르기풀이
- 프로그래머스 신규아이디추천
- 프로그래머스
- Javascript 정렬
- TS
- JavaScript
- MySQL
- 자료구조
- Javascript sort
- 알고리즘
- 자바스크립트 배열
- 정규표현식문제
- 오블완
- 타입스크립트
- node.js
- js 알고리즘
- 맨해튼거리
- binary search
- 자바스크립트 알고리즘
- 티스토리챌린지
- 자바스크립트 정렬
- 프로그래머스 자바스크립트 풀이
- mysql스키마
- 프로그래머스 자바스크립트
- 깃허브
Archives
- Today
- Total
FE PARADISE
프로그래머스 햄버거 만들기 (stack) - 자바스크립트 풀이 본문
반응형
☕️
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
스택을 사용해서 문제를 풀었다.
원래는 ingredient.join("")을 하고 해당 문자열에 "1231"이 포함되어 있는 경우를 조건으로 while문을 돌리는 코드를 짰는데 타임 아웃 에러가 나서 아래와 같이 스택을 사용해서 다시 풀어보았다.
function solution(ingredient) {
let answer = 0;
let stack = []; // 스택 사용
for(let item of ingredient){
stack.push(item); // 재료를 하나씩 스택에 넣는다.
if(stack.length >= 4
&& stack.at(-1) === 1
&& stack.at(-2) === 3
&& stack.at(-3) === 2
&& stack.at(-4) === 1) { // 1231 순서로 쌓인 재료가 있는지 판별한다
stack.splice(stack.length - 4, 4); // 버거가 완성이 되면 해당 재료는 배열에서 삭제한다
answer++; // 버거 개수를 늘린다
}
}
return answer;
}
반응형
'자료구조 & 알고리즘' 카테고리의 다른 글
프로그래머스 로또의 최고 순위와 최저 순위 - 자바스크립트 풀이 (0) | 2024.11.24 |
---|---|
프로그래머스 신규 아이디 추천 - 자바스크립트 (0) | 2024.11.17 |
프로그래머스 체육복 (greedy) - 자바스크립트 풀이 (0) | 2024.10.30 |
프로그래머스 키패드 누르기 - 자바스크립트 풀이 (0) | 2024.10.20 |
맨해튼 거리 Manhattan distance (0) | 2024.10.20 |