YULO 입문자 질문

  • jjh75607
    jjh75607
    #include <stdio.h>
    
    void sort(double base[], int n);
    
    int main()
    {
        int testCase, i, j;
        int studentCount;
        double score[41]; 
        double mid; 
    
        scanf("%d", &testCase);
    
        while(testCase--) 
        {
            scanf("%d", &studentCount);
    
            for(i = 0; i < studentCount; i++)
                scanf("%lf", &score[i]);
    
            sort(score, studentCount);
    
            int start = 0, end = studentCount - 1;
            double mid, sum_Avg[studentCount];
    
            if(studentCount % 2 != 0)
            {
                mid = score[studentCount / 2];
    
                for(i = 0; i < studentCount / 2; i++)
                {
                    sum_Avg[i] = (score[start++] + score[end--]) / 2;
    
                    if(start == end)
                    {
                        sum_Avg[i + 1] = mid;
                        break;
                    }
                }
            }
            else
            {
                for(i = 0; i < studentCount / 2; i++)
                {
                    sum_Avg[i] = (score[start++] + score[end--]) / 2;
    
                    if(start == end)
                        break;
                }   
            }
            double result = 0;
    
            for(i = 0; i < sizeof(sum_Avg) / sizeof(sum_Avg[0]); i++)
            {
                if(result <= sum_Avg[i])
                    result = sum_Avg[i];
            }
    
            printf("%.1lf\n", result);
        }
    }
    
    void sort(double base[], int n)
    {
        int i, j;
        double temp;
    
        for(i = 0; i < n; i++)
        {
            for(j = i; j < n; j++)
            {
                if(base[i] > base[j])
                {
                    temp = base[i];
                    base[i] = base[j];
                    base[j] = temp; 
                }   
            }   
        }
    }
    

    여기서 테스트 케이스는 그대로 넣었을때는 답이 맞고 제가 하나하나 써보면서 넘어 갈때는 어디가 틀린지 잘 모르겠는데 혹시 시간 초과 같은 문제일까요?


    5년 전
0개의 댓글이 있습니다.
  • 정회원 권한이 있어야 커멘트를 다실 수 있습니다. 정회원이 되시려면 온라인 저지에서 5문제 이상을 푸시고, 가입 후 7일 이상이 지나셔야 합니다. 현재 문제를 푸셨습니다.