Problem:
Score : 200 points

Problem Statement

You are given an integer sequence A of length N.
Find the maximum absolute difference of two elements (with different indices) in A.

Constraints

2 \leq N \leq 100

1 \leq A_i \leq 10^9

All values in input are integers.

Input

Input is given from Standard Input in the following format:

N
A_1 A_2 ... A_N

Output

Print the maximum absolute difference of two elements (with different indices) in A.

Sample Input 1

4
1 4 6 3

Sample Output 1

5

The maximum absolute difference of two elements is A_3-A_1=6-1=5.

Sample Input 2

2
1000000000 1

Sample Output 2

999999999

Sample Input 3

5
1 1 1 1 1

Sample Output 3

0

Solution in Go (1.6) (judge verdict: Accepted)

package main

import (
  "bufio"
  "fmt"
  "os"
  "sort"
  "strconv"
)

var sc = bufio.NewScanner(os.Stdin)

func newLine() int {
  sc.Scan()
  i, e := strconv.Atoi(sc.Text())
  if e != nil {
    panic(e)
  }
  return i
}

func main() {
  var N int 
  var A []int 

  sc.Split(bufio.ScanWords)

  // n枚を変数にする
  fmt.Scanf("%d", &N)
  // カードをarrayに落とし込む
  for i := 1; i <= N; i++ {
    A = append(A, newLine())
  }

  // sort
  //sort.Ints(a)
  sort.Sort(sort.Reverse(sort.IntSlice(A)))

  fmt.Println(A[0] - A[N-1])
}