목록스택 (10)
seunghyun Note
링크 : https://www.acmicpc.net/problem/28278 28278번: 스택 2 첫째 줄에 명령의 수 N이 주어진다. (1 ≤ N ≤ 1,000,000) 둘째 줄부터 N개 줄에 명령이 하나씩 주어진다. 출력을 요구하는 명령은 하나 이상 주어진다. www.acmicpc.net 문제 풀이 1 X: 정수 X를 스택에 넣는다. (1 ≤ X ≤ 100,000) stack.push() 2: 스택에 정수가 있다면 맨 위의 정수를 빼고 출력한다. 없다면 -1을 대신 출력한다. stack.pop() 3: 스택에 들어있는 정수의 개수를 출력한다. stack.length 4: 스택이 비어있으면 1, 아니면 0을 출력한다. stack의 empty여부 확인 5: 스택에 정수가 있다면 맨 위의 정수를 출력한다..
링크 : https://school.programmers.co.kr/learn/courses/30/lessons/42586 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 스택과 큐유형이어서 어려울 거 같아서 걱정했지만 로직만 이해하면 간단했다. O(n^2)이 되고 싶지 않아 최대한 O(n)이 될 수 있는 방법을 생각했다. 그래서 표를 그리면서 언제 push를 할까...? 고민을 많이 했다. 안 좋은 코드라고 생각했지만 그래도 다른 사람들의 코드와 비교했을 때 깔끔했던 거 같다. 📌 새로운 배열을 정의해야 한다. 1-1 progresses배열은 ..
링크 : https://school.programmers.co.kr/learn/courses/30/lessons/12906 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 스텍 , 큐 아직도 어렵다. 하지만 사용하다보면 쉬워지지 않을까..?! 스택큐 문제라 걱정하면서 몇주정도 고민하다가 오류가 너무 많이 나와서 포기했었다. 조금더 간단하게 생각해보다가 문제를 해결! 1.ArrayList를 만들어 앞뒤가 다를 때마다 add를 했다.(이렇게 간단할 줄이야...) 2. 마지막에 남은 배열값이 제외가 되기에 추가! 3. add했던 ArrayList를 a..
링크 : https://school.programmers.co.kr/learn/courses/30/lessons/76502 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 1. 스택으로 문제를 해결하기 2. 열리는 괄호는 3종류이다. '[' , '(', '{' 로 구성되어 있고 닫는 괄호와 짝을 맞춰야 한다. 3. 일단 stack이 empty 일 경우에는 push를 한다. 4. 처음 스택을 peek 했을 때 다음 값이 닫는 괄호일 경우에는 pop을 해준다. 결국 우리는 [] () {} 일때 pop을 해서 stack 을 empty로 바꾸는게 목적이..