컴공 일기267
https://school.programmers.co.kr/learn/courses/30/lessons/64061
오늘도 프로그래머스 스택 문항..
카카오 19 인턴쉽 문항이네요. 아마 코테쯤 되려나요?
사실 스택 문제는 스택을 이용해야 한다는 사실을 자각하면 어렵진 않습니다.
복병은, 이 문제가 스택 문제라는 사실을 자각하지 못하는 것에 있죠.
문제에서는 대놓고… ‘차곡차곡’이라든가, ‘쌓는다’라든가, ‘사라진다’는 표현을 해줬으므로..
stack을 이용해서 풀면 되겠다는 확신이 들죠. 그래서인지, 구현의 복잡성은 나름 있음에도 lv이 1로
잡힌 것이 아닌가 하구요.
#include <string>
#include <vector>
#include <stack>
using namespace std;
int solution(vector<vector<int>> board, vector<int> moves)
{
int row = board.size();
vector<stack<int>> st(row+1); //moves의 인덱스 1부터 이용하므로 1-based index
for(int i=0; i<row; i++)
{
for(int j=row-1; j>=0; j--)
{
//0이 아니라면 인형이므로 스택에 담는다.
if(board[j][i] != 0)
{
st[i+1].push(board[j][i]);
}
}
}
stack<int> basket;
int remove = 0;
for(int num : moves)
{
//번호에 해당하는 스택이 비어 있지 않으면
if(!st[num].empty())
{
//인형을 꺼낸다.
int toy = st[num].top();
st[num].pop();
//꺼낸 인형과 바구니 스택의 top에 위치한 인형이 같으면
if(!basket.empty() && toy == basket.top())
{
//바구니에서 그 인형을 꺼내고, 삭제한다. 두 인형을 지운 셈이므로 remove엔 2를 더한다.
basket.pop();
remove += 2;
}
//꺼낸 인형과 바구니 스택의 top에 위치한 인형이 다르면 그냥 바구니에 인형을 push 한다.
else
{
basket.push(toy);
}
}
}
return remove;
}
0 XDK (+0)
유익한 글을 읽었다면 작성자에게 XDK를 선물하세요.
-
옯뉴비 ㅇㅈ 1
이거완전청정수잔아
-
쪽지 인증 8
오르비에선 내가 인싸
-
사유는 배 아픔 그거 맞는듯
-
국힘 vs 민주 수험생 댓에 남기고 가셈
-
옯창 빙고 저거 2
쪽지를 해본 적 잇다는 다 체크 되어잇네..
-
정확도 99에 Min으로 생각하면 되나요? 아니면 예상등수에 +20하면 되나요?...
-
ㅈㅔ발
-
Manfred stoll 해석학 3판은 진짜 개별로다 Silverman 복소해석학...
-
ㅎㅇㅌ 2
담배 ㄴㄴ
-
탐구 내신 때 했어도 개념 다시 하는 거 추천하시나여? 2
예비고3 생지러고 2학년 내신 때 생지 1학기 11 2학기 21 받았는데 이번...
-
옯창 빙고 5
나 왜 옯창 아님?
-
역시 저는 옯뉴비가 맞네요!
-
강남 8학군 학교라 내신 3-4점대에 진로과목 절반 이상이 b인데 얼마나 지장감?...
-
잠은자기싫고 4
근데몸은움직이기귀찮은레전드상태
-
수능 이외의 공부를 좀해보고싶음 너무 수능에 치여산거같아 그동안
-
삼반수고민 4
언미화지 현역 44322 재수 41232 생명도 해본 적 있어서 화학을 생명으로...
-
100만 넣고 공부해가며 해볼까
-
연초참기개힘드네 20
한갑만살가..
-
분발해야겠다(?)
-
동아의 목표로 5
화작 기하 윤사 지2 괜찮을까 수학 100에 나머지 6개 이하로 틀리면 되는건가 .....
-
으흐흐
-
ㅇ활랭 12등 0
내 위 반성 해
-
흐 배아파 1
그치만 행복?해요
-
겜할때마다 0
예전에 없던 잔고가 통장에 항상 있다보니 트럭에대한충동이 생김
-
해주면 젛겟다
-
전문의 안 따고요 돈 글케 많이 안 벌어도 괜챃은데
-
파채 소스없이 파만 더달라고해서 파기름을 낸다
-
프변완 3
오늘부터는 봇치에요
-
고양이 1
-
n제 시즌에 김범준 찍먹도 해볼겸
-
죽을라다가 걍 과자먹고 기분풀려고 간다한건데 가지말랜다 죽으라는거맞지?? 개짜증나 아
-
ㅂㅎㄱ ㅇㄴ ㄴ ㅇㄱ ㅎㄷ ㅇㅈ ㄱ ㅁㅌㄷ ㅇㅈㅎ ㄱㄷㄹㄴ ㄴ ㄷㄹㅈㅇ ㅇㅈㅁㅋ...
-
대충 컷이 어떻게되는겨
-
세종대 인공지능데이터사이언스 학과 아주대 기계공학과 어디가 더 나음?? 님들이라면...
-
무물보할래 25
ㄱㄱ
-
사탐 의대 3
내년엔 좀 보이려나
-
ㄹㅋㅇㄴ 0
-
불안한 이 기분은 대체 뭐지 기초개념부터 다시 착실히 배운다는 생각으로 시발점...
-
라면 끓일때 팁 7
1. 물을 적정량의 3/4정도 넣고 청양고추를 대충 잘라 넣어 끓인다 2. 면 먼저...
-
나도 질문 받음 8
아무거나 하셈
-
ㅅㄹㅇㄹ ㅁㄹㄴ ㅇㅇ ㄱㄹㄱ ㅅㄹㅎㄷ ㅇㄹㄱ ㄴㅇ ㄷㄴ ㄱ ㄷㅇㅇㅈ ㅇㅇ ㄴ...
-
전남대 과기대 8
현역 전남대 신소재에서 과기대 신소재 정도면 재수할 가치 있는거냐 반수할지 쌩재수할지 고민중임
-
기본개념편 샀는데 수학 2컷 기준 몇주컷이 적당해보이나요 수1
-
좀 씻으라고 짜증내는 송하냥
-
아걍 술마실까 3
기분이 너무 거지 같애... 근데 알중될까바 걱정되긴함 걍 음료마셔야지
-
술 너무 많이 마셨나 10
맥박 좀 빠른 느낌
-
이 조합으로 수학 100점맞고 전체 6개 이하로 틀리면 의대 가능?
-
어떻게 버팀? 지금 조금만 무거운거 들어도 ㅈ될거 같고 조금만 걸어도 절뚝거리는...
-
둘중에 하나 호적만 올려놓고 시대 단과+스카로 학고반수 할 건데 (사실 납치...
첫번째 댓글의 주인공이 되어보세요.