하중과 길이가 정해진 다리에 트럭 여러 대가 건너가려고 할 때, 걸리는 최소 시간을 구하는 문제이다. 다리 길이(bridge_length), 버틸 수 있는 하중(weight), 트럭의 수와 무게를 알 수 있는 배열(truck_weights)이 값으로 주어졌다.최종 코드
여기까지가 설명인데... 참 설명이 애매해서 이해하는데 시간이 좀 걸렸다. 어느 훌륭하신 분이 문제를 잘 설명해 주셨는데 그 내용은 다음과 같다.n초 간의 주가를 초 단위로 기록한 배열 prices가 매개변수로 주어질 때, 각 초의 주가를 기준으로 해당 초 부터 n초
문제를 읽어보면 location이 priorities배열의 index를 가리키고 있다는 것을 알 수 있다.이 점을 어떻게 이용할까 고민하다 배열의 index와 그 index가 가리키고 있는 값을 키와 값으로 묶어 Hashmap으로 구현해 보기로 마음먹고 문제를 풀었다.
알고리즘 자체는 어렵지 않았다.'배열을 오름차순으로 정렬 후 맨 앞의 값과 그 다음 값을 생각하며 스코빌 지수(K)와 비교하면 되겠다!'그런데 제한 사항에 있는 어마어마한 배열 길이를 보고 '단순 정렬을 하면 너무 오래 걸리겠구나'라는 판단을 했다.그래서 자바의 배열
반복되는 배열을 쉽게 나타낼 수 있을 것 같은데, 뭔가... 노가다성 방법 말고는 생각이 나지 않았다. 그래서 생각하다 고안한 방법은 다음 설명과 같다! (다시 봐도 정말 이상한 방법이다 ㅋㅋ)1\. 배열을 반복할 수 없으므로 repeat를 쓸 수 있는 String으로
DFS/BFS 공부 중 풀어본 문제다. 이론은 대충 알겠는데 막상 구현하려니 머리가 터질 것 같았다. ㅋㅋㅋDFS는 깊이 우선 탐색으로 함수 속에 함수... 그 속에 함수... 또 그 속에 함수... 이런 식으로 동작하게끔 재귀함수를 호출하여 구현하는 것이 대부분이다.
Parametric Search를 이용한 풀이
그리디 알고리즘