
파이썬에는 heapify 메서드가 있고 최소힙으로 구현해준다. 힙은 오랜만에 봐서 개념이 가물가물했는데 개념을 보니 대충 생각이 났다. 힙의 좋은 점은 스택, 큐와 다르게 push와 pop을 하면 바로 자동으로 최소힙으로 정렬해준다는 점! 너무 편리한 것 같다. 하지만 스택, 큐, 힙... 실력이 부족하여 문제에 적합한 자료구조를 파악하는 것은 어려운 것같다. (사실 자료구조 알아도 적용하는 것만도 힘듦 ㅋ..) k는 스코빌 지수로, 모든 값을 k이상으로 만드는 것이 목표인 문제다. (불가능하면 -1 리턴) 처음에 scoville[0]

이 문제는 처음에 문제 이해가 어려웠다. 설명이 부족한 느낌.. 결국 처음부터 마지막까지 가격이 떨어지는 구간을 확인하면 되는 문제였다. 이중포문을 사용했는데 더 좋은 풀이가 있을 것 같다. 알고리즘 1) i번째 값과 그 이후의 값들을 비교하여, 다음 값이 크거나 같다면(즉, 값이 떨어지지 않는다면) 2) 시간을 나타내는 t를 1 더해준다. 3) 만약 떨어졌다면, (else) 4) 시간을 나타내는 t를 1 더해주고(자기자신의 초) break 해준다. 5) answer리스트에 t를 넣어준다. 1)

문제를 풀며 느낀 점은 내가 큐 스택에 약한것 같다. 어느 것 하나 쉬운 문제가 없었음.. 그리고 특히 이문제가 제일 어려웠다. 코테는 대체 이런문제를 몇분 안에 풀어야하는걸까 ㅠ.. 이 문제 사실 며칠줘도 못풀것 같았음 .. 그리고 알고리즘이 생각이 나더라도 파이썬 문법이 많이 익숙하지 않아 코드를 짜는 것이 어려웠다. 약간 C언어 처음 배워서 문제 풀 때 생각대로 코딩이 안돼서 이상한 곳에서 오래 헤메는? ㅠ 그런느낌 ㅠㅠ 포문을 안써도 되는데 굳이굳이 쓴다던지 .. 이러한 부분들을 개선해야할 것 같고 기초문제부터 풀어야할 것 같다. 우선 알고리즘은, 1) truck_weights 팝하기 쉽도록 거꾸로 배열에 넣어줌 2) do 는 진행중, done 은 완료된 것 3) 모두 완료될때 까지 (while)..
1. 멀티미디어 (1) 정의 : 다양한 정보를 디지털화하여, 여러 매체 통해 정보 전달 가능하게 하는 것 (2) 특징 : 디지털, 쌍방향성, 비선형, 통합성 (3) 기술 - RLE(무손실 압축 기법) : 동일 데이터 연속 시, 데이터 값과 연속 된 길이만으로 정보 표현하여 정보량 줄임 - RTP: 실시간 트래픽 처리 위해 설계된 프로토콜 (UDP, Application 사이에 위치) 2. 멀티미디어 데이터 (1) 오디오 데이터 1) WAVE : 윈도우에서 직접 재생 가능한 형태 2) MIDI : 정보만을 저장 -> 파일 크기 작음 3) MP3: MPEG 압축 방법에 따라 압축. MPEG-1 Audio Layer 3 4) MP4 : MP3에 비해 압축률 30% 좋음, 음질 더 뛰어남 5) OCG : 오픈소..
1. LAN - 근거리 통신 - 성형, 버스형, 링형, 계층형 - 제한된 지역에서 사용 - 고속통신 가능, 패킷 지연시간 짧음, 어떤 기기와도 통신 가능 - 경로선택 필요 x, 낮은 오류율, 자원 공유 가능 - 평형 / 동축 / 광 케이블 - 통신 구조 : 물리층, 데이터 링크계층(Mac, 논리링크제어 계층)만 대상으로 표준 정함 -> 물리 계층 : 물리신호 제어, 물리매체 접속 -> Mac(매체 접근 제어) 계층 - IEEE 802.3 : 이더넷 표준, CSMA/CD 방식 사용 - IEEE 802.11 : Wi - Fi - IEEE 802.11b - IEEE 802.11a : OFDM 사용, 5GHz - IEEE 802.11g : 2.4GHz - IEEE 802.11n : 802.11 + MIMO + ..
1. 교환회선과 전용 회선 (1) 공중 통신망 (PSDN) - 사용범위 넓음, 보편적, 공평한 서비스 제공 - 회선 공유 -> 효용도 높고 회선 비용 줄일 수 있음 - 데이터, 사용시간 적을 때 good - 회선 교환방식 & 축적 교환방식 (2) 폐역 통신망 - 전송속도 빠름, 오류 적음 - 간단 - 데이터, 사용시간 많을 때 good 2. 데이터 교환 방식 (1) 회선 교환 (Circuit Switching) 예시 : 전화선 - 실시간 전송 가능, 접속에는 긴 시간 - 오류제어, 흐름제어 가능 (사용자에 의해) - 데이터 전송 없어도 연결 유지 -> 회선 낭비 - 데이터 대량, 길 때 적합 (2) 축적 교환 (Store and Forward) - 데이터 축적 -> 경로 선정 - 실시간 x - 회선 효율..
1. 프로토콜 (통신 규약) (1) 정의: 통신을 위해 정보의 표현방법, 의미내용, 속도 등에 대한 약속 (2) 기본요소 : 구문(Syntax), 의미(Semantic), 순서(Sequence) (3) 기능 : 캡슐화, 연결제어, 순서제어, 흐름제어, 오류제어, 세분화(발신지)와 재합성(수신지), 동기화, 주소설정, 다중화(multiplexing),우선순위(priority), 보안성(security) 연결제어: 연결확립 -> 전송 -> 연결해제 전송제어: 회선접속 -> 링크 확립 -> 전송 -> 링크 절단 -> 회선 절단 2. 데이터링크 제어 프로토콜 (1) BSC(Binary Snchronous Control) - 동기 문자 첨가(SYN) -> 데이터의 시작과 끝 구별 - 10개의 전송 제어 문자 (S..

결과적으로 90점이 나왔다. 하지만 오랜 시간 투자 끝에 위의 코드에서 틀린 부분을 알아낼 수가 없었다. 우선 풀이법은 다음과 같다. 1) 필요한 작업일수를 계산하여 lefts 리스트에 넣어준다. 2) cnt 리스트의 값을 작업 계수만큼 0으로 채운다. 3) lefts 리스트에서 pop한 값을 val라고 하고 나머지 lefts 원소들에서 val값을 빼준다. 4) pop했으므로 cnt 리스트에 1을 더해준다. (기본적으로 본인을 cnt하므로) 5) i는, cnt의 인덱스값을 증가시키기 위한 인덱스로, val 값이 0보다 크다면, 이전 값의 cnt에 더해주면 안되기 때문에 i값을 증가시킨다. (설명이 쓰다보니 너무 어려운데 ㅠ 그냥 pop한 값을 나머지 리스트에서 빼주고, 뺀 값이 0이하이면 시간이 pop한..
- Total
- Today
- Yesterday
- Case When
- web
- 장고
- jsp
- 프로그래머스
- html
- python
- 문자열
- javascript
- jQuery
- 고득점 키트
- Django
- 단계별로풀어보기
- 덱
- 스프링
- 브루트 포스
- baekjoon
- Java
- 파이썬
- 자바
- bootstrap
- 자바스크립트
- brute force
- 큐
- append
- CSS
- 백준
- Oracle
- 정렬
- R
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |