본문 바로가기

스택8

[프로그래머스] 다리를 지나는 트럭 (Swift) https://school.programmers.co.kr/learn/courses/30/lessons/42583 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr스택/큐 (Queue)N대가 올라갈 수 있는 다리가 있고, 이 다리는 W만큼의 무게만 견딜 수 있음.이때, 대기하고 있는 M개의 트럭의 무게가 순서대로 담긴 배열이 주어진다.1초에 한칸씩 이동할 수 있다는 설정이 있는듯(ex. 트럭이 1개여도 다리 길이가 100이면 101초가 걸림)이때 모든 트럭이 다 다리를 건더는 데 몇초가 걸리는지 반환하는 문제(모든 트럭 한 대의 무게는 W 이하이다 = 못올라가는.. 2024. 10. 22.
[백준 9935] 문자열 폭발 (C++) https://www.acmicpc.net/problem/9935 평범한 문자열1개와 폭발 문자열1개를 입력받고, 평범한 문자열에서 폭발 문자열은 모두 사라지게 한 결과를 출력하는 문제폭발문자열이 사라짐으로 인해 합쳐진 문자열이 또다시 폭발 문자열을 포함한다면 그것도 폭발시켜야함! 접근방법Swift String의 range와 replacesubrange를 사용해보았는데 대차게 시간초과 떠서,,얌전히 C++로 풀었다네요ㅋㅋ,,Stack문제는 Stack으로..접근방법을 한마디로 요약하면 "Stack에 문자를 하나 넣을 때 마다 폭발물을 검사하자"입니다.평범한 문자열을 모두 순회하면서 한글자씩 Stack에 넣을 건데요, 이때 한글자가 들어갈 때마다폭발물 문자열 길이 만큼 스택 상단의 문자열을 뽑아서 폭발물인지.. 2024. 7. 3.
[백준 17298] 알고리즘 101일차 : 오큰수 https://www.acmicpc.net/problem/17298 17298번: 오큰수 첫째 줄에 수열 A의 크기 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째에 수열 A의 원소 A1, A2, ..., AN (1 ≤ Ai ≤ 1,000,000)이 주어진다. www.acmicpc.net 스택 Java 주어진 수열에서 각 원소마다 본인의 오른쪽에서 가장 가까운 본인보다 큰 수를 출력하는 문제 접근방법 이 문제의 포인트는 바로 스택에 오큰수가 될 수 있는 후보들을 저장하고 있다고 생각하고 스택에서 위에 있는 수가 아래에 있는 수보다 항상 커야한다는 점을 생각해야한다! 따라서 스택의 top이 본인보다 작다면 pop해줘야 한다. 스택에는 나(top이 될)보다 큰 값들만 들어있어야 한다. 그렇지 않으면.. 2021. 7. 7.
[백준 1874] 알고리즘 39일차 : 스택 수열 https://www.acmicpc.net/problem/1874 1874번: 스택 수열 1부터 n까지에 수에 대해 차례로 [push, push, push, push, pop, pop, push, push, pop, push, push, pop, pop, pop, pop, pop] 연산을 수행하면 수열 [4, 3, 6, 8, 7, 5, 2, 1]을 얻을 수 있다. www.acmicpc.net 스택 C++ 처음에 문제 이해를 못해서 이해하는데 시간이 좀 걸렸다. 1부터 n까지의 수가 연속된 수라는 점을 이해하면 된다. 1부터 n까지의 수가 섞여있는 수열이 주어지고 나는 1,2,3,4,...,n 까지의 수를 순서대로 스택에 push할 수 있고 또 pop하면서 결과적으로 pop하여 만들어진 수열이 입력된 수열.. 2020. 8. 7.
[백준 4949] 알고리즘 38일차 : 균형잡힌 세상 https://www.acmicpc.net/problem/4949 4949번: 균형잡힌 세상 문제 세계는 균형이 잘 잡혀있어야 한다. 양과 음, 빛과 어둠 그리고 왼쪽 괄호와 오른쪽 괄호처럼 말이다. 정민이의 임무는 어떤 문자열이 주어졌을 때, 괄호들의 균형이 잘 맞춰져 있는지 판단 www.acmicpc.net 스택 C++ (2011 ICPC japan) 괄호가 섞인 문자열이 주어지고 괄호가 균형이 맞는지 조사하는 문제 (, [ 가 입력되면 stack에 push하고 ), ]가 입력되면 stack에서 pop한 값이 짝이 맞는지 검사한다. 이때 짝이 맞지 않으면 균형잡힌 문자열이 아닌걸로 판단하고 결과를 출력하고 또 마지막에 stack이 비어있지 않으면 균형잡힌 문자열이 아닌걸로 판단하고 출력한다. 소스코드.. 2020. 8. 6.
[백준 9012] 눈물겨운 알고리즘 37일차 : 괄호 https://www.acmicpc.net/problem/9012 9012번: 괄호문제 괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)��www.acmicpc.net  스택 C++(,) 괄호로만 구성되어 있는 문자열에서 괄호가 짝이 맞는지 검사하는 문제 아무래도 문자열이 아직도 손에 익지 않은 것 같다.입력받는데에서 확신이 없어서 의심을 멈출수가 없었다.ㅋㅋ 스택을 굳이 써야하나 싶어서 스택 안쓰고 코드를 짜다가잘 안돼서 그냥 스택을 쓰자 하고 정석으로 풀었다.역시 정도가 가장 빠른길이여 스택은 하나 넣을때마다 처리! 가 중요한 .. 2020. 8. 5.
[백준 10773] 알고리즘 36일차 : 제로 https://www.acmicpc.net/problem/10773 10773번: 제로 문제 나코더 기장 재민이는 동아리 회식을 준비하기 위해서 장부를 관리하는 중이다. 재현이는 재민이를 도와서 돈을 관리하는 중인데, 애석하게도 항상 정신없는 재현이는 돈을 실수로 잘못 �� www.acmicpc.net 스택 C++ 숫자를 입력받아 스택에 쌓다가 0을 입력받으면 pop하고 마지막에 스택에 쌓여있는 수의 합을 구하는 문제 스택 문제가 대체로 평이한 것 같다. 소스코드 #include using namespace std; class Stack{ public: int size; int* stack; Stack(int maxSize){ size = 0; stack = new int[maxSize]; } void .. 2020. 8. 3.
[백준 10828] 알고리즘 28일차 : 스택 https://www.acmicpc.net/problem/10828 10828번: 스택 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 � www.acmicpc.net 스택 C++ 배열로 만든 스택 기본 자료구조 ..진짜 말할게 이것뿐.. C++에서 문자열 다루는거랑 동적할당,벡터 쓰는게 익숙하지 않다. 그래서 쉬운문제여도 문자열을 다뤄야 하면 자바나 파이썬을 쓰게 되고 벡터는 아직도 익숙해지지가 않아서 찾아가면서 하는데 좀 더 많이 쓰려고 노력해야겠다. 부족한 부분을 찾아가는 유익한 문제풀이 시간~ 소스코드 #include #include.. 2020. 7. 22.