[프로그래머스][MySQL] 이름이 있는 동물의 아이디
·
데이터베이스/문제 풀이
https://school.programmers.co.kr/learn/courses/30/lessons/59407 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 이름이 NULL이 아닌 행을 찾아서 정렬 후 ID 조회SELECT ANIMAL_IDFROM ANIMAL_INSWHERE NAME IS NOT NULLORDER BY ANIMAL_ID ASC ORDER BY는 ASC가 디폴트라서 생략가능SELECT ANIMAL_IDFROM ANIMAL_INSWHERE NAME IS NOT NULLORDER BY ANIMAL_ID
[프로그래머스][MySQL] 가장 비싼 상품 구하기
·
데이터베이스/문제 풀이
https://school.programmers.co.kr/learn/courses/30/lessons/131697 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 가장 비싼 "값'"을 가져오는 방법SELECT MAX(PRICE) AS MAX_PRICEFROM PRODUCT 가장 비싼 행을 정렬로 찾은 뒤, 그 행의 PRICE 만 출력하는 방법SELECT PRICE AS MAX_PRICEFROM PRODUCTORDER BY PRICE DESCLIMIT 1; 번외) 가장 비싼 상품이 여러 개일 때 가격 말고도 다른 컬럼도 함께 조회해야 한다면.SELECT PRODUCT_ID, PRODUCT_CODE, PRI..
[프로그래머스 알고리즘 고득점 Kit][이분탐색][Java] 징검다리
·
알고리즘 & 자료구조/문제 풀이
https://school.programmers.co.kr/learn/courses/30/lessons/43236 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.krhttps://www.acmicpc.net/problem/2110백준의 공유기 설치와 동일한 문제하지만 징검다리가 문제는 억지로 끼워맞춘 느낌이라 이해하기 쉽지 않았음 1. 정답 코드문제를 조금 이해하기 쉽게 나의 언어로 바꿔 말한다면,임의의 위치의 바위를 n개 부쉈을 때시작점, 바위들, 도착지 사이의 거리들을 나열할 수 있다.그 거리들 중에는 항상 최소가 되는 거리가 있는데,이 문제는 그 최소 거리가 최대가 되게 만드는 문제다.예를 들어,출발지점 - 바..
[프로그래머스 알고리즘 고득점 Kit][그래프][Java] 순위
·
알고리즘 & 자료구조/문제 풀이
https://school.programmers.co.kr/learn/courses/30/lessons/49191 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 1. 정답 코드 뭔가 스태틱 변수를 안쓰고 메서드로 분리하려다 보니 복잡해졌는데내가 이긴 사람 수와 내가 진 사람 수의 합이 나를 제외한 n-1 과 같으면 순위를 알 수 있다.그래서 2개의 단방향 그래프를 기록하고 bfs 2번을 돌리는 식으로 계산했다.모든 노드의 거리를 알 수 있는 플로이드 워셜로도 풀 수 있다.import java.util.*;class Solution { public int solution(int n, int[][] resul..
[프로그래머스 알고리즘 고득점 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 ..