아요 개발 일기
[프로그래머스] Level 1. 최소직사각형 본문
반응형
문제
풀이
minNum 부분이 조금 헷갈려서 다른 풀이글을 참고했습니다!
변수 maxNum, minNum을 만들고, for-in문을 통해서 내부의 배열 값을 받습니다.
maxNum에는 배열의 i 값들 중 큰 값과 maxNum을 비교 후 큰 값을 넣어주고,
minNum에는 배열의 i 값들 중 작은 값과 minNum을 비교 후 큰 값을 넣어줍니다.
그 후, 변수 두개를 곱해주면 끝!
좋은 풀이
func solution(_ sizes:[[Int]]) -> Int {
let sorted = sizes.map{$0.sorted()}
return sorted.map{$0[0]}.max()! * sorted.map{$0[1]}.max()!
}
이 풀이는 고차 함수 map을 많이 사용했네요?
일단 sorted 상수에 sizes 배열을 정렬하여 저장해줍니다.
그 후, 2차원 배열인 sorted 값의 첫번째 값 중 큰 값과 두번째 값 중 큰 값을 곱해주고 리턴해줍니다.
정확성 테스트
Cpu를 사용하는건 비슷한데 속도는 제 풀이가 확실히 빠르네요!!!
반응형
'Algorithms > 문제 풀이' 카테고리의 다른 글
[프로그래머스] Level 1. 3진법 뒤집기 (0) | 2023.01.17 |
---|---|
[프로그래머스] Level 1. 두개 뽑아서 더하기 (0) | 2023.01.17 |
[프로그래머스] Level 1. 2016 년 (0) | 2023.01.17 |
[프로그래머스] Level 1. 부족한 금액 계산하기 (0) | 2023.01.17 |
[프로그래머스] Level 1. 가운데 글자 가져오기 (0) | 2023.01.17 |