Как решить ошибку тайм-аута для этого кода в хакерранке - PullRequest
0 голосов
/ 18 апреля 2020
int sweet(int l,int n,int m )
{  
            if(m==0)

                return l;
            if(l>=n)
                return sweet(1,n,m-1);
            else
            return sweet(l+1,n,m-1);
}

int display(int d)
{    
    if(d==0)

      return 0;
      else
{
     int  n,m,s;

        scanf("%d %d %d",&n,&m,&s);

       printf("%d\n",sweet(s-1,n,m));

       return display(d-1);}
}

int main()
{
    int t;

    scanf("%d",&t);

        display(t);
}

1 Ответ

0 голосов
/ 18 апреля 2020

Ошибка времени ожидания связана с scanf. Если вы посмотрите на справочную страницу , scanf принимает данные из стандартного входа. Если указанные цифры c отсутствуют в stdin, программа зависнет, так как scanf продолжит ждать, пока появится то, что она ищет. .

...