#include <stdio.h>
//指针实现
int main()
{
    int n;
    scanf("%d",&n);
    int scort[10000];
    for(int i=0;i<n;i++)
    {
        scanf("%d",&scort[i]);
    }
    int *count = scort;
    int min = 0,max = 0;
    min = *count;
    max = *count;
    for(int i = 0;i<n-1;i++)
    {
        count++;
        if(*count < min)
        {
            min = *count;
           
        }
        if(*count > max )
        {
            max = *count;
        }
    }
    
    printf("%d",(max - min));

    return 0;

}
//数组函数实现
// #include <stdio.h>
// void Ascending(int scort[],int n);

// int main() 
// {
//     int n;
//     scanf("%d",&n);
//     int scort[10000];
//     for(int i=0;i<n;i++)
//     {
//         scanf("%d",&scort[i]);
//     }
//     Ascending(scort,n);
//     int ch = 0;
//     ch = scort[n-1] - scort[0];
//     printf("%d",ch);
//     return 0;
// }
// void Ascending(int scort[],int n)
// {
//     int i,j,k;
//     for(i=0;i<n-1;i++)
//     {
//         k = i;
//         for(j = i+1;j<n;j++)
//         {
//             if(scort[j]<scort[k])
//             {
//                 k = j;
//             }
//         }
//         if(i != k)
//         {
//             int tem ;
// 			tem = scort[i];
// 			scort[i] = scort[k];
// 			scort[k] = tem;
//         }
//     }
// }