BOJ11 [백준] [Python] #14719 빗물 https://www.acmicpc.net/problem/14719 14719번: 빗물 첫 번째 줄에는 2차원 세계의 세로 길이 H과 2차원 세계의 가로 길이 W가 주어진다. (1 ≤ H, W ≤ 500) 두 번째 줄에는 블록이 쌓인 높이를 의미하는 0이상 H이하의 정수가 2차원 세계의 맨 왼쪽 위치 www.acmicpc.net 순간 문제를 보자마자 보이는 2차원 격자무늬 그림에 이거 2차원 배열 써야하나 싶었다. 그러나 그런 문제는 아니었고 숫자를 받아서 배열 생성하는 뻘짓을 안한 것만 해도 감사하다. left_wall = arr[0] ans = 0 ansList = [0] for i in range(1, m): if arr[i] < left_wall: ans += left_wall-arr[i] eli.. 2021. 9. 25. [백준] [Python] #9012 괄호 https://www.acmicpc.net/problem/9012 9012번: 괄호 괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고 www.acmicpc.net 중간에 풀다가 막혔는데 is_empty라는 flag를 넣음으로서 해결함 '('면 append하고 아니면 pop하는데, 마지막에 stack에 뭐가 남아있으면 NO만 하려 했더니 걸러지지 않는 케이스가 있었다 ')' 같은 경우가 그러했다. 애초에 '('이 append된 적이 없어서 stack이 비어있거나, '('보다 ')'갯수가 더 많은 경우 그러했다. 따라서 비정상적인.. 2021. 9. 25. [백준] [Python] #2504 괄호의 값 https://www.acmicpc.net/problem/2504 2504번: 괄호의 값 4개의 기호 ‘(’, ‘)’, ‘[’, ‘]’를 이용해서 만들어지는 괄호열 중에서 올바른 괄호열이란 다음과 같이 정의된다. 한 쌍의 괄호로만 이루어진 ‘()’와 ‘[]’는 올바른 괄호열이다. 만일 www.acmicpc.net 1단계. Stack임을 알아챈다! 2단계. 괄호 별로 수행하는게 다르기 때문에 (, ), [, ] 각각 if로 분기친다 + 쌍이 안맞는 괄호 걸러내기 3단계. 계산이 복잡함을 깨닫고 새로운 flag역할을 할 tmp를 추가한다 4단계. 괄호 기호만 stack에 넣는게 아니라 계산 값도 동시에 stack으로 관리한다 - 계산 값만 따로 관리할 여러 방법을 생각해봤는데 괄호안에 괄호가 있는 거라 함께.. 2021. 9. 25. [백준] [Python] #2309 일곱 난쟁이 https://www.acmicpc.net/problem/2309 2309번: 일곱 난쟁이 아홉 개의 줄에 걸쳐 난쟁이들의 키가 주어진다. 주어지는 키는 100을 넘지 않는 자연수이며, 아홉 난쟁이의 키는 모두 다르며, 가능한 정답이 여러 가지인 경우에는 아무거나 출력한다. www.acmicpc.net 보자마자 앗 이거 9개 중 7개 permutation하면 되자나~ 이러면서 신나게 제출했는데... import itertools arr = [] for _ in range(9): arr.append(int(input())) nPr = itertools.permutations(arr, 7) for n in nPr: if sum(n) 2021. 9. 24. [백준] [Python] #11279 최대힙 https://www.acmicpc.net/problem/11279 11279번: 최대 힙 첫째 줄에 연산의 개수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 N개의 줄에는 연산에 대한 정보를 나타내는 정수 x가 주어진다. 만약 x가 자연수라면 배열에 x라는 값을 넣는(추가하는) 연산이고, x가 www.acmicpc.net 여러가지 뻘 짓을 하다가 애초에 이 문제는 "Heap"인 것부터 파악이 부족하다고 느꼈다. 그래서 heap구조부터 다시 공부함... heap은 binary구조로 Min_heap과 Max_heap이 있다. - Min_heap : root에 Min값이 옴 - Max_heap : root에 Max값이 옴 이 문제에서 원하는건 Max_heap인데 파이썬에 기본적으로 제공되는 heapq.. 2021. 9. 23. [백준] [Python] #10828 스택 오늘도 평화로운 알고리즘,,, 스택 정도야! First In Last Out 이제 안다 이거야~ 이정도는 금방이지~ n = int(input()) stack = [] def push(x): stack.append(x) def pop(): if len(stack) == 0: print(-1) else: print(stack.pop(-1)) def size(): print(len(stack)) def empty(): if len(stack) == 0: print(1) else: print(0) def top(): if len(stack) == 0: print(-1) else: print(stack[-1]) for _ in range(n): odr = list(map(str, input().split())) .. 2021. 9. 23. 이전 1 2 다음