Tiny Bunny
본문 바로가기

전체 글

(124)
프로그래머스 3단계 : 거스름돈 (Java 자바) class Solution { public int solution(int n, int[] money) { int[][] dp = new int[money.length+1][n+1]; int answer = 0; for(int i=1; i
프로그래머스 3단계 : 순위 (Java 자바) import java.util.*; class Solution { public int solution(int n, int[][] results) { int answer = 0; int[][] graph = new int[n+1][n+1]; for(int i = 0; i < results.length; i++) graph[results[i][0]][results[i][1]] = 1; //이김 for(int i = 0; i
프로그래머스 3단계 : 풍선 터뜨리기 (Java 자바) class Solution { public int solution(int[] a) { int len = a.length; if(a.length
프로그래머스 3단계 : 디스크 컨트롤러 (Java 자바) class Solution { public int solution(int[][] jobs) { int size = jobs.length; int totTime = 0; Arrays.sort(jobs, (Comparator.comparingInt(o -> o[0]))); PriorityQueue queue = new PriorityQueue(Comparator.comparingInt(o -> o[1])); int i = 0; int curTime = 0; while (size > 0) { while (i < jobs.length && jobs[i][0]
프로그래머스 3단계 : 부대복귀 (Java 자바) 문제 설명 강철부대의 각 부대원이 여러 지역에 뿔뿔이 흩어져 특수 임무를 수행 중입니다. 지도에서 강철부대가 위치한 지역을 포함한 각 지역은 유일한 번호로 구분되며, 두 지역 간의 길을 통과하는 데 걸리는 시간은 모두 1로 동일합니다. 임무를 수행한 각 부대원은 지도 정보를 이용하여 최단시간에 부대로 복귀하고자 합니다. 다만 적군의 방해로 인해, 임무의 시작 때와 다르게 되돌아오는 경로가 없어져 복귀가 불가능한 부대원도 있을 수 있습니다. 강철부대가 위치한 지역을 포함한 총지역의 수 n, 두 지역을 왕복할 수 있는 길 정보를 담은 2차원 정수 배열 roads, 각 부대원이 위치한 서로 다른 지역들을 나타내는 정수 배열 sources, 강철부대의 지역 destination이 주어졌을 때, 주어진 sourc..
프로그래머스 3단계 : 연속 펄스 부분 수열의 합 (Java 자바) 문제 설명 어떤 수열의 연속 부분 수열에 같은 길이의 펄스 수열을 각 원소끼리 곱하여 연속 펄스 부분 수열을 만들려 합니다. 펄스 수열이란 [1, -1, 1, -1 …] 또는 [-1, 1, -1, 1 …] 과 같이 1 또는 -1로 시작하면서 1과 -1이 번갈아 나오는 수열입니다. 예를 들어 수열 [2, 3, -6, 1, 3, -1, 2, 4]의 연속 부분 수열 [3, -6, 1]에 펄스 수열 [1, -1, 1]을 곱하면 연속 펄스 부분수열은 [3, 6, 1]이 됩니다. 또 다른 예시로 연속 부분 수열 [3, -1, 2, 4]에 펄스 수열 [-1, 1, -1, 1]을 곱하면 연속 펄스 부분수열은 [-3, -1, -2, 4]이 됩니다. 정수 수열 sequence가 매개변수로 주어질 때, 연속 펄스 부분 수열..
프로그래머스 3단계 : 가장 긴 팰린드롬 (Java 자바) 문제 설명 앞뒤를 뒤집어도 똑같은 문자열을 팰린드롬(palindrome)이라고 합니다. 문자열 s가 주어질 때, s의 부분문자열(Substring)중 가장 긴 팰린드롬의 길이를 return 하는 solution 함수를 완성해 주세요. 예를들면, 문자열 s가 "abcdcba"이면 7을 return하고 "abacde"이면 3을 return합니다. 제한사항 문자열 s의 길이 : 2,500 이하의 자연수 문자열 s는 알파벳 소문자로만 구성 입출력 예 풀이 주어진 문자열 s에서 가장 긴 팰린드롬 부분 문자열의 길이를 찾는 문제입니다. solution 메서드: 이 메서드는 주어진 문자열 s에서 가장 긴 팰린드롬 부분 문자열의 길이를 반환하는 함수입니다. 첫 번째 반복문 for (int i = s.length(); ..
프로그래머스 3단계 : 입국심사 (Java 자바) 문제 설명 n명이 입국심사를 위해 줄을 서서 기다리고 있습니다. 각 입국심사대에 있는 심사관마다 심사하는데 걸리는 시간은 다릅니다. 처음에 모든 심사대는 비어있습니다. 한 심사대에서는 동시에 한 명만 심사를 할 수 있습니다. 가장 앞에 서 있는 사람은 비어 있는 심사대로 가서 심사를 받을 수 있습니다. 하지만 더 빨리 끝나는 심사대가 있으면 기다렸다가 그곳으로 가서 심사를 받을 수도 있습니다. 모든 사람이 심사를 받는데 걸리는 시간을 최소로 하고 싶습니다. 입국심사를 기다리는 사람 수 n, 각 심사관이 한 명을 심사하는데 걸리는 시간이 담긴 배열 times가 매개변수로 주어질 때, 모든 사람이 심사를 받는데 걸리는 시간의 최솟값을 return 하도록 solution 함수를 작성해주세요. 제한사항 입국심사..