파이썬 썸네일형 리스트형 Python에서 stack 사용하기. 파이썬에서 스택을 사용해보자. 스택은 결국 1차원의 배열로 대체될 수 있다. 따라서 파이썬에서는 list로 stack을 대체하자. 1. init my_stack = [] # 빈 리스트를 선언. 이것을 스택으로 사용. 2. push my_stack.append(element) # element를 스택에 쌓는다. # append가 원래 맨 뒤에 넣는 거라서 push와 원리가 같다. 3. pop top = my_stack.pop() # .pop() 함수를 사용한다. 맨 뒤에 있는 원소 하나가 삭제되고, 지금은 top 변수에 입력까지 했다. 4. top top = my_stack[-1] # top이라는 변수에 맨 뒤의 변수를 입력한다. # 이때 my_stack의 변수가 삭제되지는 않는다. 더보기 [Python] 백준 1181 단어 길이와 사전식 정렬 문제 알파벳 소문자로 이루어진 N개의 단어가 들어오면 아래와 같은 조건에 따라 정렬하는 프로그램을 작성하시오. 길이가 짧은 것부터 길이가 같으면 사전 순으로 입력 첫째 줄에 단어의 개수 N이 주어진다. (1 ≤ N ≤ 20,000) 둘째 줄부터 N개의 줄에 걸쳐 알파벳 소문자로 이루어진 단어가 한 줄에 하나씩 주어진다. 주어지는 문자열의 길이는 50을 넘지 않는다. 출력 조건에 따라 정렬하여 단어들을 출력한다. 단, 같은 단어가 여러 번 입력된 경우에는 한 번씩만 출력한다. 아이디어 1. 입력받은 단어들의 중복을 제거하기 위해 Counter로 만들었다가 list로 변환한다. ['no', 'more', 'but', ... ] 2. 유니크한 단어들이 있는 list의 각 요소의 길이(단어의 글자수)를 세고 d.. 더보기 [Python] 백준 1427 내림차순으로 정렬 문제 배열을 정렬하는 것은 쉽다. 수가 주어지면, 그 수의 각 자리수를 내림차순으로 정렬해보자. 입력 첫째 줄에 정렬하고자하는 수 N이 주어진다. N은 1,000,000,000보다 작거나 같은 자연수이다. 출력 첫째 줄에 자리수를 내림차순으로 정렬한 수를 출력한다. 아이디어 sort 메소드의 인자 중에 reverse = True를 입력하여 sort하면 내림차순으로 정렬되는 것을 이용하자. 코드 import sys n_str = (sys.stdin.readline()) n_list = list(n_str) n_list.sort(reverse=True) result_str = int(''.join(n_list)) print(result_str) 새로 배운 것: join 메소드 join 메소드는 임의의 수의 .. 더보기 [Python] 백준 2108 '통계학' 문제 수를 처리하는 것은 통계학에서 상당히 중요한 일이다. 통계학에서 N개의 수를 대표하는 기본 통계값에는 다음과 같은 것들이 있다. 단, N은 홀수라고 가정하자. 산술평균 : N개의 수들의 합을 N으로 나눈 값 중앙값 : N개의 수들을 증가하는 순서로 나열했을 경우 그 중앙에 위치하는 값 최빈값 : N개의 수들 중 가장 많이 나타나는 값 범위 : N개의 수들 중 최댓값과 최솟값의 차이 N개의 수가 주어졌을 때, 네 가지 기본 통계값을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 수의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 그 다음 N개의 줄에는 정수들이 주어진다. 입력되는 정수의 절댓값은 4,000을 넘지 않는다. 출력 첫째 줄에는 산술평균을 출력한다. 소수점 이하 첫째 자리에서 반올림한.. 더보기 이전 1 다음