[프로그래머스 알고리즘 고득점 Kit][힙(Heap)][Java] 더 맵게
·
알고리즘 & 자료구조/문제 풀이
https://school.programmers.co.kr/learn/courses/30/parts/12117 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 1. 정답 코드작은 것부터 활용해야하기 때문에우선순위큐를 활용했음처음에 틀렸을 땐 2개씩 꺼내야하는데!pq.isEmpty() 로 종료조건을 걸어서 틀림import java.util.*;class Solution { public int solution(int[] scoville, int K) { PriorityQueue pq = new PriorityQueue((s1, s2) -> { return Long.compare(..
[프로그래머스 알고리즘 고득점 Kit][깊이/너비 우선 탐색(DFS/BFS)][Java] 네트워크
·
알고리즘 & 자료구조/문제 풀이
https://school.programmers.co.kr/learn/courses/30/lessons/43162 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 정답 코드 그래프를 만들어서 각 숫자마다 bfs로 연결된 부분을 방문체크를 하고 0 ~ n-1 에서 bfs 메서드가 발동된 부분을 세어주면된다.나는 이 방법보단 유니온파인드(분리집합)이 먼저 생각이 들었기 때문에 각 연결점을 union 해주고부모노드를 저장하는 p 배열의 루트의 갯수(음수로 랭크를 관리)가 네트워크의 갯수가 된다.import java.util.*;class Solution { int[] p; public int ..
[프로그래머스 알고리즘 고득점 Kit][그래프][Java] 가장 먼 노드
·
알고리즘 & 자료구조/문제 풀이
https://school.programmers.co.kr/learn/courses/30/lessons/49189 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr정답 코드문제를 대충 읽어서 최단 거리로 이동했을 때 가장 먼 노드들의 개수를 구하는 건데가장 먼 노드의 거리를 구했었다가 틀리고 바로 수정 bfs로 1번 노드에서 각 노드에 도달하기까지 지나온 최소 개수를 count배열로 저장하고가장 많이 지나온(가장 먼) 노드를 찾기 위해 max 로 최대를 계속 업데이트해주고마지막에 count 배열에 max와 같은 가장 멀리 떨어져 있는 노드들의 개수를 세고 반환해 준다.import java.util.*;class S..
[프로그래머스 알고리즘 고득점 Kit][완전탐색][Java] 최소직사각형
·
알고리즘 & 자료구조/문제 풀이
https://school.programmers.co.kr/learn/courses/30/lessons/86491 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 정답 코드가장 긴 변을 찾으면 모든 명함의 가로 세로 중 긴 변을 포함할 수 있다.그러면 명함들의 긴 변들을 가장 긴 변에 맞춰 넣고나머지 변들 중에 최대가 나머지 사이즈가 될 것이다. 나는 스왑을 하긴 했지만 다하고 나니 그냥widthMax = Math.max(widthMax, Math.max(sizes[i][0], sizes[i][1])); heightMax = Math.max(heightMax, Math.min(sizes[i][0], size..
[프로그래머스 알고리즘 고득점 Kit][해시][Java] 베스트앨범
·
알고리즘 & 자료구조/문제 풀이
https://school.programmers.co.kr/learn/courses/30/lessons/42579 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 이 문제는 알고리즘 초보자라면 꼭 풀어봐야할 문제 같았다.정렬 기준이 여러 개,여러 타입의 변수를 어떻게 관리할 것인가를 고민해볼 수 있는 문제 1. 정답 코드필요한 데이터는 노래 하나에 대해서 장르가 무엇인지그 장르는 총 몇 회 플레이 되었는지이 노래는 몇 회 플레이 되었는지몇 번 노래인지이렇게 뭐가 많이 필요할 때는 가장먼저 클래스를 떠올리는 것같다.배열로 어떻게 할 수는 있겠지만그냥 편하니까.그리고 조금 헷갈렸던 것이장르당 2개씩 가져오는 것을 어..
[프로그래머스 알고리즘 고득점 Kit][이분탐색][Java] 입국심사
·
알고리즘 & 자료구조/문제 풀이
https://school.programmers.co.kr/learn/courses/30/lessons/43238 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr정답 코드이분탐색문제라는 것을 알아도... 어떤 것을 기준을 잡을지참 어려웠다.그래도 얼마 전에 풀었던 https://www.acmicpc.net/problem/6236백준 - 용돈관리와 비슷한 느낌이 들어서심사하는 데 사용될 전체 시간을 기준으로 하면 될 것을 알았다.start = 1;end = 최악의 상황(10억 * 10억) -> 10억 명이 있고 10억 분 걸리는 한 명의 심사관이 있을 때.나는 기본을 잊어 10억 * 10억이 오버플로우 나버렸다.i..