최소직사각형

최진훈·2022년 2월 3일
0

programmers

목록 보기
27/73


최댓값을 편하게 얻어낼 수 있는 list를 두개 만들고, 반복문으로 가로길이와 세로길이를 비교하여 하나에는 큰 수들을, 다른 하나에는 작은 수들을 뽑아낸다. 그러면 큰수들과 작은수들이 담긴 새로운 리스트가 생기고 각 리스트에서 최댓값을 뽑아 곱해주면 끝이다. 해보자.

  1. 큰수와 작은수를 담을 list를 만든다.
  2. 입력받은 sizes에서 forEach()와 인덱스를 이용하여 수를 하나씩 뽑아낸다.
  3. 가로 세로를 비교하여 큰 수는 long리스트에
  4. 작은 수는 short리스트에 담는다.
  5. longshort에서 max()를 이용하여 제일 큰 수를 뽑아내고 곱하여 answer에 담는다.

레고레고


리스트의 사이즈가 계속해서 변하니까 그냥 List가 아니라 MutableList로 선언해주었다.
또한 long.max()short.max()가 null이 아니어야 하니까 !!를 붙여주었다. 테스트도 해보자.

통과~~

profile
레고레고

0개의 댓글