728x90 반응형 스택7 [백준/Python] 24511 queuestack 문제: https://www.acmicpc.net/problem/24511 사용 알고리즘: 큐, 스택 입력첫째 줄에 queuestack 을 구성하는 자료구조의 개수 N (1 둘째 줄에 길이 N 의 수열 A -> Ai = 0 이면 큐, Ai = 1 이면 스택셋째 줄에 길이 N 의 수열 B, 자료구조에 들어있는 원소 (1 넷째 줄에 삽입할 수열의 길이 M (1 다섯째 줄에 queuestack 에 삽입할 원소를 담고 있는 길이 M 의 수열 C (1 일단 첫번째 시도는 시간초과로 1% 에서 바로 컷당했다.문제에서 주어진 그대로를 구현하면 바로 시간 초과가 뜬다. 틀린 코드부터 먼저 보자. 틀린 코드import sysfrom collections import dequeinput = sys.stdin.rea.. 2024. 8. 2. [백준/Python] 9012 괄호 문제: https://www.acmicpc.net/problem/9012 사용 알고리즘: 스택 입력테스트케이스 개수 T밑으로는 T 개의 테스트케이스가 주어지며, 테스트케이스의 괄호 문자열의 길이는 2 이상 50 이하 괄호의 짝을 맞추는 문제 -> 스택 대표 문제라고 생각하면 됨 주어진 괄호 문자열을 돌면서 1. '(' 인 경우 스택에 추가2. ')' 인 경우빈 스택일 경우 짝이 안 맞으므로 answer 에 'NO' 를 기록빈 스택이 아닐 경우 스택의 맨 위의 요소 pop주어진 괄호 문자열을 다 돌고 나왔는데, 빈 스택이 아닌 경우는 짝이 안 맞는 경우이므로 answer 에 'NO' 를 기록for _ in range(n): s = deque() PS = input().rstrip() .. 2024. 7. 30. [백준/Python] 12789 도키도키 간식드리미 문제: https://www.acmicpc.net/problem/12789 사용 알고리즘: 스택 입력첫째 줄에는 승환이 앞에 서 있는 학생들의 수 N (1 승환이 앞에 서있는 모든 학생들의 번호표 (1, 2, 3, ..., N) 입력으로 주어진 학생들의 번호표를 올바른 순서로 만들 수 있는지 확인하는 문제 -> 스택을 사용해서 넣고 빼야겠다 대기번호 순서대로 간식 받게 하기stack = deque()waitingNum = 1 # 간식을 받을 차례의 대기번호for x in arr: stack.append(x) while stack and stack[-1] == waitingNum: # 빈 스택이 아니고 & 스택 맨 위랑 대기번호가 같을 때 stack.pop() wa.. 2024. 7. 28. [백준/Python] 1874 스택 수열 문제: https://www.acmicpc.net/problem/1874 사용 알고리즘: 스택 입력첫 줄에 n (1 둘째 줄부터 n 개의 줄에는 수열을 이루는 1 이상 n 이하의 정수가 하나씩 순서대로 출력됨. (같은 정수 2번 나옴x) 1 부터 n 까지의 숫자를 스택에 넣고 빼면서 입력으로 주어진 수열을 만드는 문제단, 스택에 숫자를 넣을 때는 무조건 오름차순으로 넣어야 함 -> 1 부터 n 까지 차례로 넣어야 함 1. 스택에 숫자를 넣고 빼면서 주어진 수열을 만들 수 있는 경우스택에 숫자를 넣을 때는 '+' 출력스택에서 숫자를 뺄 때는 '-' 출력2. 스택에 숫자를 넣고 빼면서 주어진 수열을 만들 수 없는 경우에는 'NO' 출력 수열 만들기 파이썬은 스택 자료구조를 제공하지 않음! -> 만들.. 2024. 7. 26. 이전 1 2 다음 728x90 반응형