평균 구하기

Anna·2024년 6월 7일

코딩테스트

목록 보기
6/28
post-thumbnail

평균 구하기

한번에 성공

// 배열의 요소들의 합을 구하고
// 그 값을 Double로 변환한 뒤 배열의 길이로 나누어 평균값을 계산하여 반환
class Solution 
{
    fun solution(arr: IntArray): Double 
    {
        return arr.sum().toDouble() / arr.size.toDouble()
    }
}

제한 상항 - arr의 원소는 -10,000 이상 10,000 이하인 정수입니다.

class Solution 
{
    fun solution(arr: IntArray): Double 
    {
    //만약에 arr가 비어있으면
    if (arr.isEmpty())
        {
        //null를 반환하는 그대신 0.0으로 반환해줘! 
            return null ?: 0.0
        }
        
        var sum = 0  // 유효 요소의 값의 합 저장하는 변수 
        var count = 0 // 유효 요소의 개수를 세는 변수
        
        for (num in arr)
        {
        //-10000~10000 사이에 포함되면 
            if (num in -10000..10000)
            {
            // 유효한 요소들의 합 구하가
                sum += num
           // 유효한 요소들의 개수 더하기? 증가?
                count++
              // 만약 else로 넘어오면 null대신 "범위 초과!!!"를 반환해!
            } else {null ?: "범위 초과!!!"}
        }
        //return는 for문 밖으로 요소의 합을 Double 형변환 후
        //Double로 형변환한 요소의 개수들의 총합을 나누면 평균을 구할 수 있다.
    return sum.toDouble()/count.toDouble()
    }
}

제한 상항 - arr은 길이 1 이상, 100 이하인 배열입니다. 반만 성공!!!

class Solution 
{
    fun solution(arr: IntArray): Double 
    {
    
    //arrLength 1부터 100사이의 랜던한 값을 가져오게 설정
        val arrLength = (1..100).random()
        var sum = 0
        var count = 0
        
        for (num in arr) 
        {
        //유효한 요소로 넘어온 자들 arrLength의 조건에 맞는지 확인함
            if (count < arrLength) 
            {
                sum += num 
                count++
            } else {null ?: "범위 초과!!!"}
        } 
         return sum.toDouble() / count.toDouble()
    }
}

0개의 댓글