본문 바로가기

프로그래머스2

[프로그래머스] LV3 | 연속 펄스 부분 수열의 합 | C++ https://school.programmers.co.kr/learn/courses/30/lessons/161988 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 접근법 부분 수열이니까 누적합을 사용할 것이다. 수열이므로 이분탐색은 절대 아니다. {1, -1, 1, -1,...} 펄스를 사용하나 {-1, 1, -1, 1...} 펄스를 사용하나 누적합 배열의 원소 값은 차이가 없다. (부호만 다르다.) N이 최대 500,000 이므로 투포인터로 합이 최대인 구간을 찾는 것은 불가능하다. 오잉 배열의 최댓값과 최솟값의 차이가 기댓값이랑 같네??? 정답코드 #.. 2023. 3. 15.
[프로그래머스] Lv4 무지의 먹방 라이브 | Python 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 먹는 시간이 적은 순으로 정렬해서 (먹는 시간 - 전 음식 먹는 시간) * (음식 개수) 로 k에 천천히 빼주는 식으로 접근했다. 그러다보니 k==0 일 때 k=tmp: k-=tmp prev=hq.heappop(heap)[0] size-=1 else: idx=k%size heap.sort(key= lambda a:a[1]) answer=heap[idx][1] break return answer 2022. 12. 1.