CodeWars 일흔 한 번째 문제

Updated:

Length of missing array

public static int getLengthOfMissingArray(Object[][] arrayOfArrays) {
		
    if(arrayOfArrays == null) {
        return 0;
    }

    HashMap<Integer,Integer> map = new HashMap<Integer,Integer>();
    int smallSize = Integer.MAX_VALUE;

    for (Object[] array : arrayOfArrays) {

        if(array == null) {
            return 0;
        }

        if(array.length == 0) {
            return 0;
        }

        if(array.length < smallSize) {
            smallSize = array.length ;
        }

        map.put(array.length, array.length);	
    }

    while(smallSize < smallSize + arrayOfArrays.length) {
        smallSize++;

        if(map.get(smallSize) == null) {
            return smallSize;
        }
    }

    return 0;
}
  • 이번 문제는 문제 자체는 좋은데 세부적으로 좀 지저분 했다.
  • 사이즈를 비교하는 문제였다면 0도 그냥 포함해서 없는 크기의 배열의 수를 return하면 되는 건데 굳이 0인 배열이 있으면 무조건 0으로 return하라는게 의미가 없는 것 같다.
  • 그리고 문제에서는 예시를 무조건 1부터 시작인줄 알았다. 그러나 시작이 2,3일 수도 있다고 해서 오류가 발생했다.
  • 나중에 게시판 보니 나같은 외국인들도 많더라. 예제에 추가해줬으면 좋겠다는 의견들이 많았다.