C++
-
백준 1935 - 후위 표기식2백준 algorithm 2020. 3. 8. 02:02
=> 피연산자들은 stack에 차례로 쌓은 후, 연산자를 만나면 해당 연산 작업을 한 후 다시 스택에 쌓는다. => 여기서 주의해야할 점은 stack top 아래 +-*/(연산자) stack top 순서라는 것을 간과해서는 안된다. =>피연산자들을 stack에 쌓기 위해서는 숫자배열에 접근하여야하는데, 이때 후위연산식에서 A, B , C 등의 아스키코드를 이용하여 인덱스 접근을 할 수 있다. ***본이은 이 부분에서 한시간을 넘게 소비하였다. #include #include #include #include #include using namespace std; int main() { ios_base::sync_with_stdio(false); cin.tie(nullptr); cout.tie(nullptr)..
-
백준 1406 - 에디터백준 algorithm 2020. 2. 25. 21:56
stack을 사용하여 풀 수 있는 문제이다. stack 두 개를 사용하여 커서를 표현 할 수 있다. 커서는 언제나 leftStack과 rightStack 사이에 있다. L : leftStack.top을 rightStack으로 옮긴다. D: rightStack.top을 leftStack으로 옮긴다. B: leftStack.top을 삭제한다. P : leftStack에 해당하는 char를 추가한다. Print () : rightStack은 pop하는 순서대로 뽑아도 무방하다. 하지만 leftStack은 pop하는 반대 순서로 print해야 한다. 본인은 vector를 사용하여 간단하게 활용하였다. leftStack을 deque 를 사용하였다면 더 간단히 해결할 수 있을 듯 하다. #include #inclu..