ABOUT ME

-

오늘 방문자
-
어제 방문자
-
전체
-
  • [programmers] 제일 작은 수 제거하기
    알고리즘 2019. 12. 3. 23:49



    접근 방법 


    1. 배열을 리스트로 변환한다

    2. Collections.min을 이용해 최소값을 찾는다.

    3. 찾은 최소값을 제거한다

    4. 리스트를 다시 배열로 반환한다.


    package com.cm;


    import java.util.Arrays;
    import java.util.Collections;
    import java.util.List;
    import java.util.stream.Collectors;

    /**
    * https://programmers.co.kr/learn/courses/30/lessons/12935?language=java
    *
    * 문제 설명
    * 정수를 저장한 배열, arr 에서 가장 작은 수를 제거한 배열을 리턴하는 함수, solution을 완성해주세요.
    * 단, 리턴하려는 배열이 빈 배열인 경우엔 배열에 -1을 채워 리턴하세요.
    * 예를들어 arr이 [4,3,2,1]인 경우는 [4,3,2]를 리턴 하고, [10]면 [-1]을 리턴 합니다.
    *
    * 제한 조건
    * arr은 길이 1 이상인 배열입니다.
    * 인덱스 i, j에 대해 i ≠ j이면 arr[i] ≠ arr[j] 입니다.
    */

    public class SkillTestLevel1 {

    public SkillTestLevel1(){
    int[] arr = {4,3,2,1};
    System.out.println(solution(arr));
    }

    public int[] solution(int[] arr) {
    if(arr.length==1){
    int[] answer ={-1};
    return answer;
    }

    List<Integer> list = Arrays.stream(arr).boxed().collect(Collectors.toList());
    Integer minValue = Collections.min(list);
    list.remove(minValue);

    int[] answer = list.stream().mapToInt(i->i).toArray();

    /*
    for(int i : answer){
    System.out.println(i);
    } */

    return answer;
    }

    }


    '알고리즘' 카테고리의 다른 글

    [hackerRank] DiagonalDifference  (0) 2019.12.10
    [programmers] 자연수 뒤집어 배열로 만들기  (0) 2019.12.04
    [Codility] PassingCars 70→100  (0) 2019.05.06
    [Codility]MaxCounters  (1) 2019.05.06
    [Codility] FrogRiverOne 27→100  (0) 2019.05.06

    댓글

Designed by Tistory.