일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- python 10989
- python 2309
- 백준 카드1
- 일곱 난쟁이
- 개발자 취업
- python 10250
- 프로그래머스
- 백준 팰린드롬수
- leetcode 2405
- 99항해
- leetcode
- softeer
- python 1259
- 스택
- 구현
- 큐
- boj 2309
- 백준 2309
- 백준
- 99클럽
- 항해99
- BOJ
- Python
- BFS
- til
- Python 20001
- python 14503
- 코딩테스트 준비
- 파이썬
- 백준 막대기
- Today
- Total
목록스택 (4)
동까의 코딩
스택 문제 중 하나인 막대기를 풀어보았다. https://www.acmicpc.net/problem/17608 17608번: 막대기 아래 그림처럼 높이만 다르고 (같은 높이의 막대기가 있을 수 있음) 모양이 같은 막대기를 일렬로 세운 후, 왼쪽부터 차례로 번호를 붙인다. 각 막대기의 높이는 그림에서 보인 것처럼 순서대로 www.acmicpc.net 스택에 다 넣어주고 빼면서 높은 건물이 나올때 기준 높이를 바꿔주면 될 것 같다. 오른쪽부터 시작하니 맨 오른쪽을 기준 높이로 잡고 왼쪽으로 하나씩 확인해 나간다. import sys input = sys.stdin.readline N = int(input()) stack = [] cnt = 1 for _ in range(N): num = int(input()..
오늘은 구현 문제를 풀어보았다. https://www.acmicpc.net/problem/20001 20001번: 고무오리 디버깅 백준 문제 풀이에 힘들어하는 수진이를 위해 민우는 문제해결에 도움이 되는 고무오리를 준비했다. 민우가 준비한 고무오리는 신비한 능력이 존재하는데, 최근에 풀던 백준 문제를 해결해주는 www.acmicpc.net 간단한 구현 문제도 많이 풀어보는 것이 생각 넓히기에 좋다고 하기에 당분간은 간단한 구현문제 80 : 난이도 있는 문제 20프로 비중으로 풀어줄 것이다. - 풀이 stack = [] while True: s = input() if s == '문제': stack.append(1) elif s == '고무오리': if not stack: stack.append(1) sta..
스택과 큐 문제 중 하나인 키로거 문제를 풀어보았습니다. 난이도는 중정도로 될 것 같습니다. https://www.acmicpc.net/problem/5397 5397번: 키로거 첫째 줄에 테스트 케이스의 개수가 주어진다. 각 테스트 케이스는 한줄로 이루어져 있고, 강산이가 입력한 순서대로 길이가 L인 문자열이 주어진다. (1 ≤ L ≤ 1,000,000) 강산이가 백스페이스를 입 www.acmicpc.net 풀이 방식은 스택을 두 개로 사용하는 방법을 선택하였습니다. 처음에는 시뮬레이션 그대로 코딩을 짜주다가 시간 제한이 뜨게 되어 스택을 사용하는 방법을 찾아보았더니 간단한 해답이 나왔습니다. 왼쪽 스택과 오른쪽 스택으로 나눠주어 그 사이에 커서를 두고 진행하면 간단합니다. 단어를 넣거나 뺄 때는 왼쪽..
기본 스택 문제 중 하나인 스택 수열 문제를 풀어보았습니다. 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 문제를 처음 보았을 땐 이해가 되지 않았지만 아래 힌트를 보고 풀이를 하였습니다. 제일 먼저 입력된 숫자만큼 count를 해줘서 push를 진행해 주고, 해당 숫자가 나오면 반복문을 탈출하여 pop을 진행하고 숫자를 빼내어 줍니다. 예제 1을 예로 들어보면..