본문 바로가기
728x90

3

[PG/Python] 기능개발 📌 문제 https://programmers.co.kr/learn/courses/30/lessons/42586 코딩테스트 연습 - 기능개발 프로그래머스 팀에서는 기능 개선 작업을 수행 중입니다. 각 기능은 진도가 100%일 때 서비스에 반영할 수 있습니다. 또, 각 기능의 개발속도는 모두 다르기 때문에 뒤에 있는 기능이 앞에 있는 programmers.co.kr 📌 문제 접근 방법 먼저 progresses와 speeds를 queue로 만들어줬다. progresses가 빌 때까지 작업과 배포를 반복한다. 작업은 progresses의 0번째 작업과 speeds의 0번째 속도를 더해서 progresses의 마지막에 다시 push해줬다. 배포는 progresses를 순회하며 앞에서부터 작업량이 100이 넘은 작.. 2021. 12. 9.
[Algorithm] 스택(Stack), 큐(queue) 스택 (Stack) 물건을 쌓아 올리듯 자료를 쌓아 올린 형태의 자료구조 스택에 저장된 자료는 선형 구조를 가짐 선형 구조 : 자료 간의 관계가 1대 1 비선형 구조 : 자료 간의 관계가 1대 N (예: 트리) 후입선출구조 (LIFO; Last-In-Firsh-Out) 스택 연산 삽입 : 저장소에 자료 저장 (push) 삭제 : 저장소에서 자료를 꺼냄, 꺼낸 자료는 삽입한 자료의 역순 (pop) 스택이 공백인지 아닌지 확인 : isEmpty 스택에 원소가 있는지가 궁금하다면 연산을 새롭게 정의하지 않고 !isEmpty와 같이 사용 스택의 top에 있는 item(원소)을 반환 : peek 스택의 삽입/삭제 과정 스택 크기 이상의 자료를 push하는 경우 : overflow 자료가 없을 때 pop하는 경우 .. 2021. 10. 3.
[BOJ/Python] 18258. 큐2 📌 문제 https://www.acmicpc.net/problem/18258 18258번: 큐 2 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 2,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 📌 문제 접근 방법 다른 사람의 정답 코드를 보지 않으려고 온갖 시도를 다 해봤다!!! append가 문제일까 싶어서 que를 리스트가 아닌 문자열로도 받아보고, pop 대신 슬라이싱을 사용해보고 등등 파이썬 함수의 시간 복잡도를 찾아보면서 정말 온갖 시도를 해보다가 안되길래 찾아봤더니 이건 결국 deque를 사용해서 풀어야하는 것..! 근데 좀 더 찾아보니 de.. 2021. 8. 9.
728x90