festival 문제 오답이유를 모르겠어요

  • frood
    frood
    #include<stdio.h>
    #pragma warning (disable:4996)
    
    int cost[1001] = { 0, };
    double calc(double L,int N)
    {
        double sum1 = 999999999;
        for (int j = 0; j + L<=N; j++) {
            for (; L <= N; L++) {
                double sum = 0;
                for (int i = j; i < L; i++) {
                    sum += cost[i];
                }
                if (sum1 > sum / L) sum1 = sum / L;
            }
        }
        return sum1;    
    }
    int main()
    {
        int C, N, L;
        double result;
        scanf("%d", &C);
        for (int c = 0; c < C; c++)
        {
            scanf("%d %d", &N, &L);
            for (int i = 0; i < N; i++) {
            scanf("%d",&cost[i]);
            }
            result = calc((double)L, N);    
            printf("%.11f\n",result);
        }
        return 0;
    }
    

    예제 여러가지로 확인해봤는데 이유를 모르겠어요..
    어디서 오답처리가 된걸까요??


    8년 전
2개의 댓글이 있습니다.
  • 박선준
    박선준

    ~~~ c++
    #include<stdio.h>

    #pragma warning (disable:4996)

    int cost[1001];
    double calc(int L,int N)
    {
    double sum1 = 999999999;
    for (; L <= N; L++) {
    for (int j = 0; j + L<=N; j++) {
    double sum = 0;
    for (int i = j; i < L+j; i++) {
    sum += cost[i];
    }
    // printf("%lf\n",sum);
    if (sum1 > sum / L) sum1 = sum / L;
    }
    }
    return sum1;

    }
    int main()
    {
    int C, N, L;
    double result;
    scanf("%d", &C);
    for (int c = 0; c < C; c++)
    {
    scanf("%d %d", &N, &L);
    for (int i = 0; i < N; i++) {
    scanf("%d",&cost[i]);
    }
    result = calc(L, N);

    printf("%.11f\n",result);
    }
    return 0;
    }


    8년 전 link
  • frood
    frood

    감사합니다. 오류가 없이 말끔히 출력되서
    검색범위가 잘못된걸 몰랐네요 ㅎㅎ;; 감사합니다 ㅎ


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