가이버2
개발 블로그
가이버2
전체 방문자
오늘
어제
  • 분류 전체보기 (172) N
    • 교육 (115)
      • 백엔드 (14)
      • 프론트 (2)
      • 네트워크 관련 (4)
      • 데이터 관련 (3)
      • devops (3)
      • 그외 (3)
      • 알고리즘 (5)
      • 코테 (81)
    • 디버깅 (3)
      • 스프링 Data JPA (3)
      • JAVA (0)
    • 개발 편의 (8)
    • 기계 (25) N
      • NAS (10) N
      • ROUTER (0)
      • 맥북 (15)
    • 소프트웨어 (17)
      • WIN (4)
      • MAC (13)
      • LINUX (0)
    • 생활 (0)
      • 구매 (0)
      • 오월이 (0)
    • 링크 (3)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

  • naelonambul 개발 블로그 입니다.

인기 글

태그

  • 프로그래머스
  • SSD
  • 맥북
  • M4
  • WSL
  • 인프런
  • SQL
  • Spring
  • 시놀로지
  • 윈도우
  • 가상화
  • 맥
  • 코딩테스트
  • JS
  • intellij
  • 맥미니
  • Java
  • M1
  • 스프링
  • ARM

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
가이버2

개발 블로그

교육/코테

[프로그래머스]JAVA 더 맵게 -힙

2022. 7. 1. 23:03

참고 :

 블로그 : https://shanepark.tistory.com/261

 자바 공식 문서 : https://docs.oracle.com/javase/7/docs/api/java/util/PriorityQueue.html

java.util.PriorityQueue<Integer> scovilles = new java.util.PriorityQueue<>();

링크 : https://programmers.co.kr/learn/courses/30/lessons/42626

 

코딩테스트 연습 - 더 맵게

매운 것을 좋아하는 Leo는 모든 음식의 스코빌 지수를 K 이상으로 만들고 싶습니다. 모든 음식의 스코빌 지수를 K 이상으로 만들기 위해 Leo는 스코빌 지수가 가장 낮은 두 개의 음식을 아래와 같

programmers.co.kr

import java.util.*;
import java.util.List;
import java.util.stream.Collectors;

class Solution {
    public int solution(int[] scoville, long K) {
        int answer = 0;
        
 java.util.PriorityQueue<Integer> scovilles = new java.util.PriorityQueue<>();
        for(int i=0; i<scoville.length; i++){
            scovilles.add(scoville[i]);
        }

        long currentMin = 0;

        while(K > currentMin){
            if(scovilles.size() == 1 ) {
                answer = -1;
                break;
            }
            scovilles = procceed(scovilles);
            currentMin = getMin(scovilles);
            answer++;
        }
        return answer;
    }
    
    public java.util.PriorityQueue<Integer> procceed ( java.util.PriorityQueue<Integer> before){
        before.add(before.poll()+before.poll()*2);
        return before;
    }

    public long getMin(java.util.PriorityQueue<Integer> lists){
        return (long)lists.peek();
    }
}

'교육 > 코테' 카테고리의 다른 글

[프로그래머스]SQL NULL 처리하기  (0) 2022.07.03
[프로그래머스]SQL 입양 시각 구하기(1)  (0) 2022.07.03
[프로그래머스]JAVA 기능개발  (0) 2022.07.01
[프로그래머스]JAVA 124 나라의 숫자  (1) 2022.07.01
[프로그래머스]JAVA 행렬 테두리 회전하기  (0) 2022.06.30
    '교육/코테' 카테고리의 다른 글
    • [프로그래머스]SQL NULL 처리하기
    • [프로그래머스]SQL 입양 시각 구하기(1)
    • [프로그래머스]JAVA 기능개발
    • [프로그래머스]JAVA 124 나라의 숫자
    가이버2
    가이버2
    개인 개발 블로그 입니다.

    티스토리툴바