programmers 기초 Day21

Hwani·2024년 6월 21일

프로그래머스 DAY 1~25

목록 보기
47/51

문제 - 뒤에서 5등 위로

풀이

import java.util.*;

class Solution {
    public int[] solution(int[] num_list) {
        Arrays.sort(num_list);
        ArrayList<Integer> list = new ArrayList<>();

        for (int i = 5; i < num_list.length; i++) {
            list.add(num_list[i]);
        }
        
        int[] answer = new int[list.size()];
        for (int i = 0; i < list.size(); i++) {
            answer[i] = list.get(i);
        }
        
        return answer;
    }
}

설명

매개변수 배열에서 가장 작은 5개를 제외한 나머지 값을 오름차순한 리스트를 리턴하는 문제

  • 매개변수 배열을 정렬한다.
  • for문으로 인덱스 5번부터 나머지 값을 리스트에 담는다.
  • 리스트를 배열에 담아서 배열을 리턴한다.

문제 - 전국 대회 선발 고사

풀이

import java.util.*;

class Solution {
    public int solution(int[] rank, boolean[] attendance) {
        ArrayList<Integer> selectedIndices = new ArrayList<>();

        for (int i = 0; i < rank.length; i++) {
            if (attendance[i]) {
                selectedIndices.add(i);
            }
        }

        selectedIndices.sort((a, b) -> Integer.compare(rank[a], rank[b]));

        int a = selectedIndices.get(0);
        int b = selectedIndices.get(1);
        int c = selectedIndices.get(2);

        int result = 10000 * a + 100 * b + c;

        return result;
    }
}

조건

  • 참여 가능한 학생
  • 그 중 등수 높은 3명

설명

  • attendance 배열에 true인 인덱스와 rank 배열의 일치하는 i값을 리스트에 추가한다.
  • 리스트에 담긴 값을 정렬 후 rank를 이용해 높은 것 3개만 남긴다.
  • 그 3개의 값을 변수 a,b,c에 저장하고 계산하여 리턴한다.

문제 - 정수 부분

풀이

class Solution {
    public int solution(double flo) {
        return (int) flo;
    }
}

설명

  • double 타입의 변수를 (int)로 형변환하여 리턴한다.

문제 - 문자열 정수의 합

풀이

class Solution {
    public int solution(String num_str) {
        int answer = 0;
        String[] numArr= num_str.split("");
        for (String num : numArr){
            answer+=Integer.parseInt(num);
        }
        return answer;
    }
}

설명

  • 문자열을 split한다.
  • for문으로 String num에 저장한다.
  • int answer에 형변환하여 값을 저장 후 리턴한다.

문제 - 문자열을 정수로 변환하기

풀이

public class Solution {
    public int solution(String n_str) {
        return Integer.parseInt(n_str);
    }
}

설명

  • 매개변수 n_str을 int로 형변환하여 리턴한다.
profile
개발자될거야

0개의 댓글