[Python] 백준 알고리즘 온라인 저지 17298 오큰수 출처 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 알고리즘 분류 자료 구조 스택 문제 크기가 N인 수열 A = A1, A2, ..., AN이 있다. 수열의 각 원소 Ai에 대해서 오큰수 NGE(i)를 구하려고 한다. Ai의 오큰수는 오른쪽에 있으면서 Ai보다 큰 수 중에서 가장 왼쪽에 있는 수를 의미한다. 그러한 수가 없는 경우에 오큰수는 -1이다. 예를 들어, A = [3, 5, 2, 7]..
[Python] 백준 알고리즘 온라인 저지 1406 에디터 https://www.acmicpc.net/problem/1406 1406번: 에디터 첫째 줄에는 초기에 편집기에 입력되어 있는 문자열이 주어진다. 이 문자열은 길이가 N이고, 영어 소문자로만 이루어져 있으며, 길이는 100,000을 넘지 않는다. 둘째 줄에는 입력할 명령어의 개수 www.acmicpc.net 이번 문제는 (자료 구조, 스택, 연결 리스트) 알고리즘 문제로 문제의 내용은 단순히 편집기의 역할을 구현하는 것이었으나 커서를 이동하고 새로운 자료들을 추가하는 방법에 대해 찾기 위해 다른 분들의 코드를 참조했다. 코드 import sys input = sys.stdin.readline st1 = list(input().strip()) #..
[Python] 백준 알고리즘 온라인 저지 1874 스택 수열 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 문제를 이해하는데 시간이 좀 걸렸다. n값을 받고 수를 차례대로 입력할 때 입력한 수까지 스택에 넣었다가 그 수를 빼서 입력받는 수열을 만들 수 있는지 출력하는 문제로 중복으로 스택에 추가되지 않는다는 점을 신경 써야 한다. 예를 들면 n = 5 (3, ..
[Python] 백준 알고리즘 온라인 저지 10828 스택 https://www.acmicpc.net/problem/10828 10828번: 스택 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 스택의 개념을 이용하여 풀이하는 문제로 5가지 명령을 이용해 자료를 컨트롤하는 방법에 대한 알고리즘이다. 시간제한이 짧은 문제로 sys모듈을 사용하였고 이를 이용하다 문제점을 발견하여 수정하였다. 코드 import sys input = sys.stdin.readline # 5가지 명령 def push(x): stack.a..