코틀린/코딩테스트

코딩테스트 [최댓값 만들기(1)]

정혜현 2024. 6. 25. 09:29

문제

정수 배열 numbers가 매개변수로 주어집니다. numbers의 원소 중 두 개를 곱해 만들 수 있는 최댓값을 return하도록 solution 함수를 완성해주세요.

풀이

1. 접근

1.1 관찰

배열 내 최댓값 두 수를 곱한 결과를 반환하는 문제

입력 : 배열(정수)

출력 : 정수

 

1.2 계획 

내림차순해서 0,1 인덱스를 곱해야겠다.

내림차순하기 : sortDescending 

answer에 담기 : 0,1 인덱스 곱해서 담기

 

 

 

2. 시행착오

2.1 시도

 

class Solution {
    fun solution(numbers: IntArray): Int {
        var answer: Int = 0
        numbers.sortDescending()
        answer = numbers[0] * numbers[1]
        return answer
    }
}

 

검증결과 : 성공

class Solution {
    fun solution(numbers: IntArray): Int {
        numbers.sortDescending()
        return numbers[0] * numbers[1]
    }
}

 

 


회고

 

 

적으면서 sort와 sorted의 차이도 되새겨보고 입출력도 생각해보면서 적으니 한번에 풀 수 있었다. 코드를 적을 때 단순히 풀이를 위한 과정으로만 수행하는 게 아니라 여러 연상을 통해 발전할 수 있는 기회로 삼는 것이 좋겠다.