programmers.co.kr/learn/courses/30/lessons/42587 문제는 이렇다. 우선순위 숫자로 이루어진 리스트가 있고, 맨앞부터 체크해서 만약 가장 높은 우선순위를 가진 숫자라면 실행한다. 아니라면 맨뒤로 미뤄진다. 원하는 location에 있는 우선순위가 몇 번째로 실행되는지 return하는 문제 규칙이 상세하게 설명되어 있어서 그것대로 구현하기만 하면 큰 문제는 없었다. max(priorities)를 이용하여 최대 우선순위가 몇인지 구해주고 deque형태로 popleft 혹은 그냥 리스트 형태에서 pop(0)을 이용하여 구현 맨 왼쪽에 있는게 최대 우선순위인지 체크후에 아니면 맨뒤로 보내버리고, location은 단계가 반복될 때 마다 -1로 줄어들어 결국 0일경우에 max라..
programmers.co.kr/learn/courses/30/lessons/42583 코딩테스트 연습 - 다리를 지나는 트럭 트럭 여러 대가 강을 가로지르는 일 차선 다리를 정해진 순으로 건너려 합니다. 모든 트럭이 다리를 건너려면 최소 몇 초가 걸리는지 알아내야 합니다. 트럭은 1초에 1만큼 움직이며, 다리 길이�� programmers.co.kr 문제는 이렇다. 시간 1초에 1만큼 다리를 지나고, 다리가 견딜수 있는 총 무게와 트럭들의 무게를 알려준다. 트럭들이 리스트 순서대로 다리를 이동한다면 총 몇초가 걸리겠는가? 첫 번째 풀이 첫 번째 풀이이다. 도착한 트럭 리스트인 arrive 트럭을 만들어서 도착한 리스트의 길이가 총 트럭갯수 리스트가 있는 truck_weights보다 작다면 while문으..
programmers.co.kr/learn/courses/30/lessons/42586 코딩테스트 연습 - 기능개발 프로그래머스 팀에서는 기능 개선 작업을 수행 중입니다. 각 기능은 진도가 100%일 때 서비스에 반영할 수 있습니다. 또, 각 기능의 개발속도는 모두 다르기 때문에 뒤에 있는 기능이 앞에 있는 �� programmers.co.kr 생각보다 간단한 문제 앞의 숫자가 100이 된 타이밍에 연속된 숫자들이 100이상인 경우 한번에 처리되고, 그 숫자를 return해주는 문제 첫 번째 인덱스만 사용해서 deque를 써서 popleft()를 써도 되고, 그냥 리스트에서 pop(0)을 써도 충분히 구현할 수 있는 문제였다. popleft()가 필요한 경우는 없어지는 숫자를 다시 활용해야할 때 필요성이..
programmers.co.kr/learn/courses/30/lessons/42584 첫 번째 풀이 for 문으로 리스트를 순회하면서 주식값이 떨어졌는지 안떨어졌는지 체크해가며 연속으로 떨어진 시간을 구해줬다. 케이스는 모두 통과했지만 효율성에서 개박살나버림 ㅋㅋ 주먹구구식으로 구현하다보니 효율성을 전혀 생각하지 못했다. 구현은 됐고 조금만 손보면 될거같아서 조금만 수정해보기로함 두 번째 풀이(성공) 이중 for문을 써서 구현완료 전 코드는 쓸데없이 코드를 순회할 때 마다 리스트를 슬라이스한 후에 길이를 구해주려고 해서 너무 비효율적이었다. 그냥 리스트 길이를 처음에 len(prices)로 구한후에 for문 내에서 해당 숫자만 불러와서 연산하게했더니 훨씬 나아졌다. 하지만 여전히 효율성이 좋다고 말하기..
문제는 다음과 같다 첫번째 풀이(test2, test15 실패) Dict형태를 이용하여 값을 지정해주다가, 재생의 최댓값을 기준으로 하길래 heapq로 하면 효율적이지 않을까 해서 완성까진 했는데 테스트2, 테스트 15를 통과못하였다. 조건 3번인 같은 장르내에서 재생 최댓값이 같다면 고유번호가 낮은 노래를 먼저 수록한다는 조건때문인 듯 하다. 그래서 완전히 막힌상태이다. heapq의 조건상 0 번째 인덱스를 기준으로 최대, 최솟값을 구할수 있어서 두 번째 조건의 경우 어떻게 돌아가야할지 막막하다. 아무래도 다시 처음부터 다시짜야할 듯 하다 ㅠㅠ somjang.tistory.com/entry/Programmers-%ED%95%B4%EC%8B%9C-%EB%B2%A0%EC%8A%A4%ED%8A%B8%EC%9..
heap 자료형을 이용하면 최댓값, 최솟값을 이용할 수 있어서 정말 편하고 효율적인데, 최댓값의 경우 요소에 -를 넣어주어서 반복문을 이용하여 위치를 바꾸는등 방법은 있지만 귀찮다. heapq._heapify_max(heap) #가장 큰 값이 0번째 인덱스에 위치하는 heap 자료형 구현 heapq._heappop_max(heap) # 가장 큰 값을 삭제하면서 return해줌 구현완료 단점은 -heappush_max는 없다.. heapify와 heappop만 이용할거라면 좋은 방법이다
- Total
- Today
- Yesterday
- Vue.js 책
- windows10 chmod 400
- JavaScript
- Vue.js강의
- 부트스트랩 커스텀
- 코드잇 강의
- 윈도우 chmod
- vue bootstrap scss
- 코딩테스트
- javascript 객체배열
- Java수료
- chmod 400
- vue.js 개념
- Vue.js 프로젝트 투입 일주일 전
- 입문
- 프로그래머스
- 파이썬
- bootstrap5
- dict 연속성
- Vue.js 입문
- 데이터 사이언스 프로그래밍 파이썬
- vue.js 특징
- 배열 특정객체 제거
- 프로그래머스 코딩테스트
- Python
- 다리위를지나는트럭
- heap max
- MySQL 문제
- Vue.js
- 배열 특정요소 제거
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |