Solution 1) 내 풀이
class Solution {
    public String[] solution(String[] names) {
        String[] answer = new String[(names.length + 5 - 1) / 5];

        for (int i = 0; i < names.length; i += 5) {
            answer[i / 5] = names[i];
        }
        return answer;
    }
}
코드 및 문제 리뷰

배열안의 이름을 5명씩 끊은 뒤 가장 앞에 오는 사람의 이름을 배열을 만드는 문제이다.

굳이 실제 배열을 만들 필요는 없고 반복문의 증가치를 +5 해주면 되는 간단한 문제였다.

 

대신 문제의 관건은 배열의 크기를 만들어내는데 있는 것 같았다.

List를 쓰는 방법도 있었지만 형변환 없이 해낼 수 있다면 더 좋은 풀이가 될 것 같아

방법을 좀 찾아봤다.

 

위와같이  (names.lenghth + 5(문제에서 정해준 기준치) - 1) / 5 (기준치)를 해주게 되면

answer 배열에 맞는 크기가 나와줬다. 위의 공식으로 반올림하는 모양세가 갖춰진 것.

 

이후 반복문 안의 내용도 i / 5를 통해 0부터 오름차순으로 배열에 요소를 넣을수 있었다.

+ Recent posts