본문 바로가기

알고리즘 & 자료구조569

주식가격 package programmers; import java.util.Arrays; public class 주식가격 { public static int[] solution(int[] prices) { int[] answer = new int[prices.length]; for (int i = 0; i prices[j]) break; } } return answer; } public static void main(String[] args) { System.out.println(Arrays.toString(solution(new int.. 2023. 2. 2.
주차 요금 계산 package programmers; import java.util.ArrayList; import java.util.Arrays; import java.util.Comparator; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.StringTokenizer; import java.util.TreeMap; public class 주차요금계산 { //출차내역이 없다면 23:59에 출차된 것으로 간주 //누적 주차 시간이 기본 시간이라면 기본 요금 청구 //누적 주차 시간이 기본 시간을 초과하면, 기본 요금에 더해서 초과한 시간에 대해서 단위 시간마다 단위 요금 부여 //초과한 시간이 단위 시간으로.. 2023. 2. 1.
n 진수 게임 package programmers; public class n진수게임 { //1. 숫자를 0부터 차례대로 말한다. 첫번째 사람은 0, 두번째 사람은 1, ... 열번째 사람은 9 //2. 10 이상의 숫자부터는 한자리씩 끊어서 말한다. 열한번째 사람은 10의 첫자리인 1, 열두번째 사람은 둘째 자리인 0 // 2 2023. 1. 31.
피로도 package programmers; public class 피로도 { // 1 2023. 1. 29.
더 맵게 package programmers; import java.util.Arrays; import java.util.PriorityQueue; import java.util.stream.Collectors; public class 더맵게 { //섞은 음식의 스코빌 지수 = 가장 맵지 않은 음식의 스코빌 지수 + (두 번째로 맵지 않은 음식의 스코빌 지수 * 2) //스코빌 지수가 K 이상이 될 때까지 반복 //모든 음식의 스코빌 지수를 K 이상으로 만들기 위해 섞어야 하는 최소 횟수 //만들 수 없는 경우 -1 //2 2023. 1. 28.
압축 package programmers; import java.util.ArrayList; import java.util.Arrays; public class 압축 { //LZW(Lempel-Ziv-Welch) 압축 알고리즘 public static int[] solution(String msg) { ArrayList dictionary = init(); ArrayList ans = new ArrayList(); for (int i = 0; i < msg.length(); i++) { StringBuilder w = new StringBuilder(String.valueOf(msg.charAt(i))); // w 에 들어온 문자가 마지막 문자인경우 종료 if (i == msg.length() - 1) { a.. 2023. 1. 27.