Problem:
Score : 100 points

Problem Statement

Takahashi has a strong stomach. He never gets a stomachache from eating something whose "best-by" date is at most X days earlier.
He gets a stomachache if the "best-by" date of the food is X+1 or more days earlier, though.

Other than that, he finds the food delicious if he eats it not later than the "best-by" date. Otherwise, he does not find it delicious.

Takahashi bought some food A days before the "best-by" date, and ate it B days after he bought it.

Write a program that outputs delicious if he found it delicious, safe if he did not found it delicious but did not get a stomachache either, and dangerous if he got a stomachache.

Constraints

1 ≤ X,A,B ≤ 10^9

Input

Input is given from Standard Input in the following format:

X A B

Output

Print delicious if Takahashi found the food delicious; print safe if he neither found it delicious nor got a stomachache; print dangerous if he got a stomachache.

Sample Input 1

4 3 6

Sample Output 1

safe

He ate the food three days after the "best-by" date. It was not delicious or harmful for him.

Sample Input 2

6 5 1

Sample Output 2

delicious

He ate the food by the "best-by" date. It was delicious for him.

Sample Input 3

3 7 12

Sample Output 3

dangerous

He ate the food five days after the "best-by" date. It was harmful for him.

Solution in C (GCC 5.4.1) (judge verdict: Wrong Answer)

#include<stdio.h>
#include<string.h>
#define M 100005
char s1[M],s2[M],s[M],d[M],x[M];
int  a[M],b[M],c[M];
void ss(char s1[],char s2[],int n,int m)
{
    int i,j,a[M],b[M];
    for(i=0; i<n; i++)
        a[i]=s1[n-i-1]-'0';
    for(i=0; i<m; i++)
        b[i]=s2[m-i-1]-'0';
    for(i=0; i<n; i++)
        c[i]=a[i]-b[i];
    for(i=0;i<n;i++)
      if(c[i]<0)
        {
            while(c[i]<0)
            {
              c[i+1]=c[i+1]-1;
              c[i]+=10;
            }
        }
}
int main()
{
    int n,m,i,j,k,kk;
    memset(s1,0,sizeof(s1));
    memset(s2,0,sizeof(s2));
    scanf("%s %s %s",x,s2,s1);
    {
        n=strlen(s1);
        m=strlen(s2);
        if(n>m)
            ss(s1,s2,n,m);
        else if(n<m)
        {
            printf("delicious\n");
            return 0;
        }
        else
        {
            k=strcmp(s1,s2);
            if(k==0)
            {
                printf("safe\n");
                return 0;
            }
            else if(k>0)
                ss(s1,s2,n,m);
            else
            {
                printf("delicious\n");
                return 0;
            }
        }
        if(n>m) kk=n;
        else kk=m;
        while(c[kk]==0) kk--;
        for(i=kk,j=0;i>=0;i--,j++)
        {
            d[j]='c[i]';
        }
        n=strlen(d);
        m=strlen(x);
        if(n>m)
        {
            printf("dangerous\n");
            return 0;
        }
        else if(n<m)
        {
            printf("safe\n");
            return 0;
        }
        else
        {
            k=strcmp(d,x);
            if(k<=0)
            {
                printf("safe\n");
                return 0;
            }
            else if(k>0)
            {
                printf("dangerous\n");
                return 0;
            }
        }
    }
    return 0;
}