[프로그래머스 알고리즘 고득점 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..
[프로그래머스 알고리즘 고득점 Kit][해시][Java] 의상
·
알고리즘 & 자료구조/해시
https://school.programmers.co.kr/learn/courses/30/lessons/42578 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr1. 정답 풀이각 의류 타입의 갯수를 센다.하나의 타입을 여러개 입지 못하니까 그 타입이 가질 수 있는 경우의 수는 안입는다 1번을 입는다, 2번을 입는다. ... 이렇게 된다.안입는다를 포함해서 갯수 + 1을 타입별로 전부 곱하면 전체 경우의 수가 나온다.import java.util.*;class Solution { public int solution(String[][] clothes) { HashMap closet = new Has..
[프로그래머스 알고리즘 고득점 Kit][스택/큐][Java] 같은 숫자는 싫어
·
알고리즘 & 자료구조/스택
https://school.programmers.co.kr/learn/courses/30/lessons/12906 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr1. 정답 풀이스택과 큐 항목에 들어있지만 그냥 리스트로 하나씩 비교하면 된다고 생각해서 그렇게 구현함정답은 배열하나씩 비교하면서 넣기 때문에 그 크기를 처음부터 정할 수 없기때문에 동적배열인 ArraList를 사용했지만 return은 int[] 배열로 달라하니...리스트를 int배열로 바꿀 수 밖에 없었다.toArray와 같은 메서드를 쓰고 싶었지만 반환이 Integer[] 이라서 기각.프로그래머스 아직 적응하려면 멀었다.import java.util...