본문 바로가기

전체 글237

[백준] 11399번: ATM(그리디 알고리즘) - Python https://www.acmicpc.net/problem/11399 11399번: ATM 첫째 줄에 사람의 수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄에는 각 사람이 돈을 인출하는데 걸리는 시간 Pi가 주어진다. (1 ≤ Pi ≤ 1,000) www.acmicpc.net [문제유형] - 그리디 알고리즘 [문제] [제출한 코드 및 풀이] 1차시도(사유: 오답) - 아래와 같이 코드 구현 후 출력은 제대로 됐는데 오답처리가 되었다. - 뭔가 입력 받는 과정에서 오답 처리가 된 것 같은 느낌.. n = int(input()) seq = input().split(" ") seq.sort() sum = 0 for i in range(1, len(seq)+1): for j in range(1, i+1):.. 2022. 3. 3.
[백준] 11047번: 동전 0(그리디 알고리즘) - Python https://www.acmicpc.net/problem/11047 11047번: 동전 0 첫째 줄에 N과 K가 주어진다. (1 ≤ N ≤ 10, 1 ≤ K ≤ 100,000,000) 둘째 줄부터 N개의 줄에 동전의 가치 Ai가 오름차순으로 주어진다. (1 ≤ Ai ≤ 1,000,000, A1 = 1, i ≥ 2인 경우에 Ai는 Ai-1의 배수) www.acmicpc.net [문제유형] - 그리디 알고리즘 [문제] [제출한 코드 및 풀이] - 그리디 알고리즘의 대표적인 문제이고 이번 문제는 크게 어렵지 않아 일부 라인에 코드로 주석을 달아뒀다. - 효율을 위해 moneyList를 큰 금액부터 내림차순 정렬되도록 해두고 해당 리스트를 돌면서 k의 몫과 나머지를 구해서 k가 0이 될 때까지 해당 과정을 반복.. 2022. 3. 3.
[백준] 1541번: 잃어버린 괄호(그리디 알고리즘) - Python https://www.acmicpc.net/problem/1541 1541번: 잃어버린 괄호 첫째 줄에 식이 주어진다. 식은 ‘0’~‘9’, ‘+’, 그리고 ‘-’만으로 이루어져 있고, 가장 처음과 마지막 문자는 숫자이다. 그리고 연속해서 두 개 이상의 연산자가 나타나지 않고, 5자리보다 www.acmicpc.net [문제유형] - 그리디 알고리즘 [문제] [제출한 코드 및 풀이] - 값을 최소로 만들기 위해서는 예제에서 - 를 만날 경우 다음 - 까지를 괄호로 묶어야 한다. - 그러기 위해서 input을 받으며 -를 기준으로 분리시킨다. ex) ["50", "50+40"] - formula의 0번째 리스트 값을 answer에 계속 더해준다. (-를 만나기 전까지) - 그 이후 formula의 1번째 리.. 2022. 3. 3.
[백준 알고리즘] 11279번: 최대 힙(우선순위 큐) - Python https://www.acmicpc.net/problem/11279 11279번: 최대 힙 첫째 줄에 연산의 개수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 N개의 줄에는 연산에 대한 정보를 나타내는 정수 x가 주어진다. 만약 x가 자연수라면 배열에 x라는 값을 넣는(추가하는) 연산이고, x가 www.acmicpc.net [문제] [제출한 코드 및 풀이] 실패코드(시간초과 1) - stack이라는 리스트를 만들어두고 x를 입력 받으면 항상 sort를 해준다. - x가 0일 때, stack의 길이가 0일 경우 0을 출력하고 길이가 0이 아닐 경우 stack의 가장 큰 값을 출력 후 stack에서 제거한다. - x가 0이 아닐 때, stack에 x를 추가한다. 실패코드(시간초과 2) - 일단 여기서.. 2022. 3. 1.
[백준 알고리즘] 10773번: 제로(스택) - Python https://www.acmicpc.net/problem/10773 10773번: 제로 첫 번째 줄에 정수 K가 주어진다. (1 ≤ K ≤ 100,000) 이후 K개의 줄에 정수가 1개씩 주어진다. 정수는 0에서 1,000,000 사이의 값을 가지며, 정수가 "0" 일 경우에는 가장 최근에 쓴 수를 지우고, 아닐 경 www.acmicpc.net [문제] [제출한 코드 및 풀이] - input()을 통해 k와 k만큼의 숫자 num을 입력 받음 - num이 0일 경우 stack에서 pop(마지막 값 제거)을 하고 0이 아니면 num을 stack에 append() 함 * append()는 push()와 같은 기능을 하여, 리스트의 가장 마지막에 객체로 추가하는 기능 수행 - 마지막에 stack의 합계를 계산하.. 2022. 2. 28.
TIL | Feb 26(SAT), 2022 👉TODAY 1. 11:00 기상 2. Node.js 특징 및 싱글스레드/이벤트루프 관련 공부 📌TOMORROW 1. 생일휴가 🔨What I Learned? 📚 Node.js 특징 https://create-something-from-nothing.tistory.com/312 [Node.js] Node.js 란 무엇인가? ※본 포스팅은 개인 학습을 목적으로 작성된 것이므로 정확하지 않은 정보가 포함되어 있을 수 있음을 참고 부탁드립니다. Node.js 란? Node.js는 서버사이드 자바스크립트이며 구글의 자바스크립 create-something-from-nothing.tistory.com 🧙‍♂️Reivew 이번주도 나름대로 뭔가를 열심히했던 것 같다. 다만 부트캠프 과정보다 학습량은 많이 떨어졌다. .. 2022. 2. 26.