본문 바로가기

Algorithm/자료구조

(4)
[Stack] 백준 2493번: 탑 이번 문제는 정말 너무너무 고생해서 푼 문제이다. 시간복잡도 때문에!!! (`ー´) 스택으로 푸는 문제 2493번 탑에 대해서 알아보자. 이 말들을 간단히 추려보면, 각자 다른 높이의 탑이 있는데 왼쪽으로 레이저를 쏘면 누가 맞겠는가! 그 인덱스를 출력하라는 문제이다. 조금만 자세히 읽어보면 간단히 이해할 수 있다. 여기서 나는 이 문제를 스택으로 풀기 마음 먹었으니 스택으로 푸는데... 정말 많이 고민하고 많이 시도해봤다는걸 느낄 수 있겠는가... 흑... 아무튼 빨리 본론으로 넘어가자. 문제 풀기 전에 주의 할 점 일단, 문제를 풀기전에 주의할 점이 있다. 1. 첫째 줄에 탑의 수를 나타내는 정수 N이 주어진다. N은 1 이상 500,000 이하이다. 둘째 줄에는 N개의 탑들의 높이가 직선상에 놓인 ..
[Stack] 백준 1918번: 후위 표기식 이번에는 백준 스택 문제를 풀면서 꽤 중요하다고 생각한 1918번 후위표기식에 대해 알아보자! (ت) 후위 표기식이란? 문제에 나와있지만, 한번 더 설명을 하자면 우리는 a+b나 a*b+(c-d)와 같은 중위 표기식이 익숙하다. 수식은 일반적으로 중위표기식을 포함해 3가지 표기법으로 표현할 수 있다. 1. 중위 표기식 우리들이 일반적으로 알고 있는 표기식 Ex) a+b, a*b-c, A+B*(C-D) 2. 전위 표기식(Prefix notation) 연산자가 피연산자 앞에 위치하는 표기식 Ex) +ab, -*abc, +A*B-CD 3. 후위 표기식(Postfix notation) 연산자가 피연산자 뒤에 위치하는 표기식 Ex) ab+, ab*c-, ABCD-*+ 이 위 세가지 방법 중 이 문제에서 다룰 표기..
[Stack] 백준 3986번: 좋은 단어 이 문제는 문제만 이해하면 금방 풀 문제이다. stack을 이용해서 다음 문자와 stack에 있는 top 문자와 같으면 두 문자를 pop해주면 되는 문제! 자세한 내용은 코드를 직접 보면서 참고하자. 여기서 한번더 집고 가야 할 문제는 cin과 string::getline() 함수를 같이 쓰면 헷깔리게 되는 점에 대해 이야기 하려고 한다. getline에 대한 포스팅은 다음 포스팅에 더 자세히 나와있다. > https://summer-story.tistory.com/7 [기초다지기] 백준 문제집으로 시작하기 #1 어떻게 시작하면 좋을까, 알고리즘? 코딩은 좀 해봤는데 뭔가 기초가 부족한 것 같기도 하고, 기초를 다지고는 싶은데 어떻게 시작해야될지는 모르겠고.. 나름 알고리즘을 공부한다고 백준 알고리즘을 ..
[자료구조] 백준 Stack 자료구조: 스택 Stack 친구들과 스터디를 하면서 첫번째 주제로 잡은 자료구조. 자료구조란 무엇이가. 우리들의 친구 위키는 이렇게 말한다. 자료구조(資料構造, 영어: data structure)는 컴퓨터 과학에서 효율적인 접근 및 수정을 가능케 하는 자료의 조직, 관리, 저장을 의미한다.[1][2][3] 더 정확히 말해, 자료 구조는 데이터 값의 모임, 또 데이터 간의 관계, 그리고 데이터에 적용할 수 있는 함수나 명령를 의미한다.[4] 신중히 선택한 자료구조는 보다 효율적인 알고리즘을 사용할 수 있게 한다. 여기서 효율적인 접근 및 수정을 가능케하는 자료의 관리, 저장을 위해 우리는 stack, queue, heap 등과 같은 구조를 사용한다. 여기서 스택에 대해 가장 먼저 살펴볼 예정이다! 역시나 ..