FIX 문제 Non Zero code 런타임 오류가 뜹니다. ㅠㅠ

  • naruro
    naruro

    FIX 문제 입니다.
    실행시 원하는 입력과 출력이 나오는것 같은데 자꾸 RTE라고 오류가 나서 ㅠㅠㅠ 도와주세요

    #include <stdio.h>
    #include <stdlib.h>
    #include <math.h>
    #include <time.h>
    
    int main(){
        int problem_set;
        int problem[12];
        int problem_num;
        int problem_level;
        int cnt[1000];
        int i,j,k;
        srand((unsigned)time(NULL));
    
        scanf("%d",&problem_set);
    
        for(int z = 0 ; z <1000; z++)
        {
            cnt[z]=0;
        }
        for(i = 0 ; i <problem_set; i++)
        {
            for( j = 0 ; j < 12; j++)
            {
                problem[j]=0;
            }
    
    
            scanf("%d",&problem_num);                           //문제 수 입력
            if(problem_num<10 || problem_num>12)
            {
                exit(1);
            }
            for(k = 0 ; k<problem_num; k++)
            {
                problem_level=rand()%problem_num+1;
                if(problem[problem_level-1]==0)
                {
                    problem[problem_level-1]++;
                    printf(" %d ",problem_level);
                    if((k+1)==problem_level)
                    {
                        cnt[i]++;
                    }
                }
                else
                    k--;
            }
            printf("\n");
        }
    
        for(int i = 0 ; i<problem_set; i++)
        {
            printf("%d\n",cnt[i]);
        }
        return 0;
    }
    

    9년 전
1개의 댓글이 있습니다.
  • Toivoa
    Toivoa

    k 루프에서 입력 받기 전에 랜덤으로 판단하고 있는데, 입력이 제대로 받아지지 않을 수 있습니다. RTE (non zero return code)인 것을 보니 입력이 제대로 받아지지 않아서 문제 난이도로 주어진 값을 문제 개수로 입력받고 exit(1)이 수행된 것으로 보입니다.

    문제의 난이도는 모두 다르다고 써있으니 참고하세요.

    또 결과를 저장하고 한번에 출력하는데, 테스트 케이스가 1000개 이상일 수도 있습니다. 각 케이스에 대한 답을 바로 출력하셔도 됩니다.


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