반응형
programmers.co.kr/learn/courses/30/lessons/64061
5 X 5 아니고
N X N
인형을 바구니에 넣을 때 공이 사라진다면
2개씩 사라진다.
#Vector 버전
#include <string>
#include <vector>
using namespace std;
int solution(vector<vector<int>> board, vector<int> moves) {
int answer = 0;
vector<int> basket;
for(int i =0; i<moves.size(); i++ ){
//해당 위치
for(int j = 0; j <board.size(); j++)
if(board[j][moves[i]-1] > 0 ){
if(!basket.empty() && basket[basket.size()-1]== board[j][moves[i]-1]){
answer += 2;
basket.pop_back(); // 있던 거 빼주기
}
else
basket.push_back(board[j][moves[i]-1]);
board[j][moves[i]-1] = 0;
break;
}
}
return answer;
}
#Stack 버전
#include <string>
#include <vector>
#include <stack>
using namespace std;
int solution(vector<vector<int>> board, vector<int> moves) {
int answer = 0;
stack<int>basket;
for(int i =0; i<moves.size(); i++ ){
//해당 위치
for(int j = 0; j <board.size(); j++)
if(board[j][moves[i]-1] > 0 ){
if(!basket.empty() && basket.top()== board[j][moves[i]-1]){
answer += 2;
basket.pop();
}
else
basket.push(board[j][moves[i]-1]);
board[j][moves[i]-1] = 0;
break;
}
}
return answer;
}
반응형
'IT > 알고리즘' 카테고리의 다른 글
58] 프로그래머스 주식가격 (0) | 2020.11.16 |
---|---|
57] 프로그래머스 기능개발 (0) | 2020.11.16 |
★55] 프로그래머스 실패율 (0) | 2020.10.25 |
54] 프로그래머스 3진법 뒤집기 (0) | 2020.10.21 |
53] 프로그래머스 이상한 문자 만들기 (0) | 2020.10.19 |
댓글