일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
Tags
- 코딩테스트
- 개발자_조이킴
- 개발자의 책장
- 프로그래머스
- 재귀함수
- Developer_JoyKim
- 알고리즘
- array.slice()
- Where
- MySQL
- 코플릿
- for문
- 배열
- 자바스크립트
- 역행자
- node.js
- 코딩공부
- array
- 블록체인
- JavaScript
- 코드스테이츠
- join
- Programmers
- 최강의 인생
- 정규표현식
- SQL
- Algorithms
- select
- array.push()
- Hackerrank
Archives
- Today
- Total
CodingSpace
프로그래머스#54(Lv.1)_크레인 인형뽑기 게임 본문
크레인 인형뽑기 게임 - 2019 카카오 개발자 겨울 인턴십
다른 분들이 하신것 보고 배우고 또 배우자! (reduce메소드, map 메소드!)
포기하지말고 계속해서 공부하자!
화이팅:)
// 프로그래머스 - 크레인 인형뽑기 게임 function solution(board, moves) { // 터진 인형의 개수를 세어줄 변수 cnt 선언 let cnt = 0 // 인형을 담을 바구니 let basket = [] while(moves.length > 0) { // moves 맨 앞요소부터 하나씩 제거해준다 let head = moves.shift() for(let i = 0; i < board.length; i++) { // 만약 head-1 열 중에 0이 아닌 숫자가 존재하는 경우 if(board[i][head-1] !== 0) { // 바구니에 그 숫자를 담은 후 해당 요소에 0을 할당한다. // for문을 끝낸다 basket.push(board[i][head-1]) board[i][head-1] = 0 break; } } // 만약 바구니에 담겨있는 숫자의 개수가 2개 이상일 경우 if(basket.length >= 2) { let len = basket.length // 만약 바구니 맨 끝에 있는 숫자와 맨 끝 옆에 있는 수자가 같다면 // 두 숫자는 터지고 (바구니에서 제거하고), 터진 인형수를 세어준다 (cnt += 2) if(basket[len-1] === basket[len-2]) { basket.pop() basket.pop() cnt = cnt + 2 } } } return cnt } |
<다른분의 solution>
![]() ![]() |
좋아요공감
공유하기
통계
글 요소
'프로그래머스 > Level1' 카테고리의 다른 글
[에라토스테네스의 체] 소수 찾기 (0) | 2023.05.29 |
---|---|
프로그래머스#53(Lv.1)_실패율 (0) | 2021.11.08 |
프로그래머스#52(Lv.1)_폰켓몬 (0) | 2021.11.05 |
프로그래머스#51(Lv.1)_3진법 뒤집기 (0) | 2021.11.04 |
프로그래머스#50(Lv.1)_모의고사 (0) | 2021.11.04 |
Comments