https://school.programmers.co.kr/learn/courses/30/lessons/64061
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
function solution(board, moves)
{
// board[0][moves[i]-1]부터, board[1][moves[i]-1], ...
// 마지막으로 board[board.length-1][moves[i]-1] 까지 훑어보면서,
// 이 중 '0이 아닌 첫 원소'를 basket(바구니)에 push하고,
// 그 '0이 아니던 첫 원소'를 0으로 만들어준다.
// ---------------------------------------------------------------------------------
var basket = [];
for (i=0; i<moves.length; i++)
{
for (j=0; j<board.length; j++)
{
if (board[j][moves[i]-1] !== 0) // 0이 아닌 원소를 만나면,
{
basket.push(board[j][moves[i]-1]);
// 이 원소를 basket에 push해주고,
board[j].splice(moves[i]-1, 1, 0);
// 0으로 만들어준다.
break;
// break 넣는거 되게 중요함ㅋㅋ 이거 안넣어서 작동안됐었음
}
}
}
// basket = [4,3,1,1,3,2,4]
// ---------------------------------------------------------------------------------
var num = 0; // 사라지는 인형의 개수를 num이라고 해준다.
for (j=basket.length-1; j>0; j--)
{
for (i=basket.length-1; i>0; i--)
{
if(basket[i]==basket[i-1]) // 연속된 원소가 나타난다면
{
basket.splice(i, 1); // 그 원소 두 개를
basket.splice(i-1, 1); // 다 삭제해 주고
num += 2; // num에 2를 더해준다.
// 왜 2냐면 인형 2개가 한번에 사라지니까
}
}
}
return num;
}

손코딩했던거 ㅋㅋ 게임개발자가 되는게 버킷리스트 중 하나라서 꼭 풀고싶었던문제 >_< 수고링~
+) 241024
function solution(board, moves) {
let newArray = [];
let tempArray = [];
for (let row=0; row<board.length; row++){
for (let column=0; column<board.length; column++){
tempArray.push(board[column][row])
}
newArray.push(tempArray)
tempArray = []
}
let stack = [];
let deletedCount = 0;
for (let moveindex=0; moveindex<moves.length; moveindex++){
for (let boardindex=0; boardindex<board.length; boardindex++){
if (newArray[moves[moveindex]-1][boardindex] !== 0 ) {
if (stack.length > 0 && stack[stack.length-1] == newArray[moves[moveindex]-1][boardindex]) {
stack.pop()
deletedCount += 2
newArray[moves[moveindex]-1][boardindex] = 0
break;
} else {
stack.push(newArray[moves[moveindex]-1][boardindex])
newArray[moves[moveindex]-1][boardindex] = 0
break;
}
}
}
}
return deletedCount;
}
'코딩테스트 > LV. 1' 카테고리의 다른 글
LV. 1 :: K번째 수 (0) | 2023.01.31 |
---|---|
LV. 1 :: 모의고사 (0) | 2023.01.30 |
LV. 1 :: 신규 아이디 추천 (0) | 2023.01.30 |
LV. 1 :: 실패율 (0) | 2023.01.30 |
LV. 1 :: 약수의 개수와 덧셈 (0) | 2023.01.29 |
댓글