stack5 [백준/BOJ] 15926번: 현욱은 괄호왕이야!! 문제https://www.acmicpc.net/problem/15926해설처음 문제에 접근한 방법은 다음과 같았다."(" 라면 Stack에 집어넣는다.")"이며 Stack이 비어있지 않다면 길이에 2를 더한 후 max 값을 갱신한다.")"이며 Stack이 비어있다면 Stack과 길이를 초기화시킨다.문제를 너무 단순하게 접근하였는지 당연히 틀렸습니다를 받게 되었다.문제에 나와있는 테스트케이스를 모두 통과하기에 질문 게시판에서 추가 테스트케이스를 확인하였고,(()(()()(()( 위와 같은 케이스에서 답이 4가 나와야 하지만 8이라는 오답이 나오는 것을 확인할 수 있었다.나의 풀이대로면 아래와 같이 된다.이렇게 적어가면서 했다면 당연히 아니란걸 알았을테지만 너무 느낌대로 풀었던 것 같다. 때문에 다른 해결 .. PS(Problem Solving)/BOJ 2025. 4. 21. [자료구조] 스택(Stack) 스택이란? 스택은 한쪽 끝에서만 데이터를 넣고 뺄 수 있는 자료구조이다. 스택은 위와 같은 형태이다. 위의 빈 공간으로 데이터가 들어오고 나갈 수 있다. 위의 사진에서 2라는 데이터를 stack에 넣고, 값을 빼내고자 할 때 2부터 값이 나오는 것을 알 수 있다. 즉, 마지막으로 들어간 값이 처음으로 나온다는 Last Input First Output(LIFO) 형태를 따른다. 구현 스택의 기능은 다음과 같다. push: 스택에 값을 넣는다. pop: 스택에서 가장 위에 있는 값을 빼내고 이를 출력한다. size: 스택에 들어있는 원소의 개수를 출력한다. empty: 스택이 비어있는지 아닌지 출력한다. peek 또는 top: 스택에서 가장 위에 있는 값을 출력한다. 아래 코드로 기능들을 어떻게 구현했는지.. 자료구조 2023. 9. 26. [백준/BOJ] 2493번: 탑 문제 https://www.acmicpc.net/problem/2493 2493번: 탑 첫째 줄에 탑의 수를 나타내는 정수 N이 주어진다. N은 1 이상 500,000 이하이다. 둘째 줄에는 N개의 탑들의 높이가 직선상에 놓인 순서대로 하나의 빈칸을 사이에 두고 주어진다. 탑들의 높이는 1 www.acmicpc.net 해설 탑이 n개 있고, 이 탑들은 좌측으로 신호를 보낸다. 좌측에 현재 탑보다 더 높은 탑이 있다면 신호를 받을 수 있고, 더 높은 탑이 없다면 신호를 받을 탑이 존재하지 않는다는 의미이다. 문제의 예시를 보며 차근차근 알아가보자. 맨 처음 탑은 좌측에 아무 것도 없기 때문에, 신호를 받는 탑이 없다. 즉 0을 출력한다. 이제 이 탑을 스택에 넣어줄 것이다. 높이가 9인 2번 탑에서 신호를.. PS(Problem Solving)/BOJ 2022. 8. 22. [백준/BOJ] 17952번: 과제는 끝나지 않아! https://www.acmicpc.net/problem/17952 17952번: 과제는 끝나지 않아! 성애는 이번 학기에 전공을 정말 많이 듣는다. 이로 인해 거의 매일을 과제를 하면서 보내고 있다. 그런데도 과제가 줄어들 기미가 보이지 않는데, 바로 분단위로 과제가 추가되고 있기 때문이 www.acmicpc.net 문제 성애는 이번 학기에 전공을 정말 많이 듣는다. 이로 인해 거의 매일을 과제를 하면서 보내고 있다. 그런데도 과제가 줄어들 기미가 보이지 않는데, 바로 분단위로 과제가 추가되고 있기 때문이다. 다행히 과제 제출 기한은 학기가 끝날 때까지이다. 너무나도 많은 과제를 하다가 미쳐버린 성애는 아래와 같은 규칙으로 과제를 해 나가고 있다. 과제는 가장 최근에 나온 순서대로 한다. 또한 과제를 .. PS(Problem Solving)/BOJ 2022. 3. 2. [백준/BOJ] 10828번: 스택 https://www.acmicpc.net/problem/10828 10828번: 스택 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 문제 정수를 저장하는 스택을 구현한 다음, 입력으로 주어지는 명령을 처리하는 프로그램을 작성하시오. 명령은 총 다섯 가지이다. push X: 정수 X를 스택에 넣는 연산이다. pop: 스택에서 가장 위에 있는 정수를 빼고, 그 수를 출력한다. 만약 스택에 들어있는 정수가 없는 경우에는 -1을 출력한다. size: 스택에 들어있는 정수의 개수를 출력한다. empty: 스택이 비어있.. PS(Problem Solving)/BOJ 2021. 11. 28. 이전 1 다음 728x90