728x90 반응형 Stack4 2022.06.07 [프로그래머스] (python 파이썬) 짝지어 제거하기 https://programmers.co.kr/learn/courses/30/lessons/12973 코딩테스트 연습 - 짝지어 제거하기 짝지어 제거하기는, 알파벳 소문자로 이루어진 문자열을 가지고 시작합니다. 먼저 문자열에서 같은 알파벳이 2개 붙어 있는 짝을 찾습니다. 그다음, 그 둘을 제거한 뒤, 앞뒤로 문자열을 이어 붙 programmers.co.kr 풀이 이 문제는 스택구조형식으로 문제를 해결했다. 먼저 문자열 s의 문자를 for문으로 하나씩 이전값과 비교하는데 만약 arr배열이 비어있다면 해당 값을 arr배열에 추가해주고 배열이 비어있지않다면 가장 최근에 들어왔던 문자와 비교해 같으면 해당 문자를 배열에서 제거하는 방식으로 문제를 해결했다. 만약 모두 짝이 지어진다면 arr배열이 마지막엔 비어.. 2022. 6. 7. 2022.02.24 [백준] (python 파이썬) 제로 https://www.acmicpc.net/problem/10773 10773번: 제로 첫 번째 줄에 정수 K가 주어진다. (1 ≤ K ≤ 100,000) 이후 K개의 줄에 정수가 1개씩 주어진다. 정수는 0에서 1,000,000 사이의 값을 가지며, 정수가 "0" 일 경우에는 가장 최근에 쓴 수를 지우고, 아닐 경 www.acmicpc.net 풀이 이 문제는 입력된 값에서 0이 나오면 제일 최근에 입력된 값을 지우는 문제이기 때문에 stack을 이용했다. 0이 입력될 경우, 지울 수 있는 수가 있다고 보장되었기 때문에, stack이 비어있을 경우는 고려하지 않았다. 1 2 3 4 5 6 7 8 9 stack=[] for i in range(int(input())): num=int(input()) if .. 2022. 2. 25. 2022.02.23 [백준] (python 파이썬) 괄호 https://www.acmicpc.net/problem/9012 9012번: 괄호 괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고 www.acmicpc.net 풀이 이 문제를 풀기 위해 몇가지 순서를 생각했다. 1. '(' 괄호가 나오면 stack에 넣어준다. 2. ')' 괄호가 나오면 stack을 확인해준다. 2-1. 만약 stack이 비어있다면 괄호의 짝이 맞지 않으므로 check를False로 바꾼 뒤, break를 이용해 반복문을 빠져나온다. 2-2. 만약 stack에 데이터가 들어있다면 짝이 있으므로 stack의 마.. 2022. 2. 23. 2022.02.11 [백준] (python 파이썬) 스택 https://www.acmicpc.net/problem/10828 10828번: 스택 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 풀이 스택은 나중에 넣은 데이터를 먼저 빼낼 수 있는 데이터 구조로 LIFO방식이다. 스택은 list[]로 이미 구현 되어있다. list에서 append를 사용하면 리스트의 뒤에 데이터가 입력되고 pop를 사용하면 리스트의 제일 뒤에 있는 데이터를 빼낼 수 있다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 import sys list = [] for _ in ra.. 2022. 2. 11. 이전 1 다음 728x90 반응형