알고리즘 풀이/프로그래머스

EZ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15class Solution { boolean solution(String s) { int p =0; int y = 0; s = s.toLowerCase(); for(int i=0; i
주어진 strings배열의 문자들 앞에 n번째 index char값 1개를 문자들 가장 앞에 붙힌 다음 Collections클래스로 정렬해줌 그 후에 가장 앞 첨자를 떼준 후에 배열에 저장 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24import java.util.*; class Solution { public String[] solution(String[] strings, int n) { List list = new ArrayList(); for (int i = 0; i
divisor로 나누어 떨어지는 숫자들 ans 리스트에 추가 ans리스트에 추가된 숫자가 0개일 경우에 -1값 저장 오름차순 정렬 리스트를 배열로 바꿔준 후 리턴 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23import java.util.*; class Solution { public int[] solution(int[] arr, int divisor) { ArrayList ans = new ArrayList(); for (int i = 0; i
claClo 배열에 현재 학급학생들의 체육복 개수 현황 저장 numlost변수에 체육복을 잃어버린 학생들 수 저장 claClo 배열들을 1로 초기화한 후에 reserve, lost 배열로 여분, 잃어버린 체육복 +-로 정리해줌 현재 체육복이 0개일 경우에 앞뒤 학생들의 체육복 수를 체크하여 나눠주는 이벤트 발생시킴 체육복이 0개가 아닌 학생들 counting시켜준 후 리턴 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37import java.util.*; class Solution { public int solution(int n, int[] lost, int[] reser..
정의된 리스트에 문제에서 요구하는 대로 중복 숫자를 제거하며 넣어준 후에 리스트를 배열로 변환시키면 끝 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22import java.util.*; public class Solution { public int[] solution(int []arr) { ArrayList arrayAns = new ArrayList(); int pres = -1; for (int i = 0; i
단어의 길이 짝수 홀수 나눠서 처리 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15class Solution { public String solution(String s) { String answer = ""; int length = s.length(); int index = length / 2; if(length%2==0){ answer=s.substring(index-1,index+1); } else{ answer=s.substring(index,index+1); } return answer; } }
숫자조립만 잘해주면됨 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24class Solution { public String solution(int a, int b) { String answer = ""; int[] days = { 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }; String[] dates = {"FRI", "SAT","SUN", "MON", "TUE", "WED", "THU"}; int tot = 0; for (int i = 0; i
배열들을 받아주고 문제에서 요구하는 answer를 찾기 위해 array배열에서 주어진 조건의 숫자들을 뽑아네는 taken배열을 찾아낸다 그 후에 sorting 후 요구하는 k번째 숫자들을 찾아 answer배열에 저장해줌 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 import java.util.*; class Solution { public int[] solution(int[] array, int[][] commands) { int[] answer = new int[commands.length]; for (int i = 0; i
학생클래스를 선언하여 학생의 번호와 받은 점수를 정의함 pattern을 2차원 배열에 저장하여 for문을 통해 학생들의 점수를 체크하고 Student객체를 정의함 Comparator 클래스를 통해 학생들의 점수에 내림차순으로 정렬함 동시최대정답자가 2~3명인 경우도 있으므로 그러한 경우 처리 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 import java.util.*; class Solution { static class S..
완전탐색으로 하는 것이 아닌 먹는 시간이 짧은 순으로 음식을 1개씩 빼는 방식으로 문제를 해결함 음식을 빼다가 문제에서 주어진 k순을 넘어가는 경우를 체크해주어 넘어가기 전의 인덱스를 활용하여 k번째가 어떤 음식인지 찾아야함 Food 클래스를 선언하여 음식을 먹는데 걸리는 시간과 음식 번호를 표시해줌 Food 리스트를 선언해 주어진 food_times에 맞춰서 매칭해줌 Compator를 2개 써야하는데 1개는 시간에 대한 오름차순, 1개는 인덱스에 대한 오름차순을 위해 선언함 시간에 대한 오름차순으로 sorting 해주고 앞서 말한 음식 1개씩 빼는 방식으로 for문돌리다가 문제에서 요구하는 k번째 넘게 도달했을 때 따로 이벤트 처리해준 후 앞서 선언한 foods 배열에서 해당하는 index값을 retu..
배게
'알고리즘 풀이/프로그래머스' 카테고리의 글 목록 (12 Page)