Problem:
MathJax.Hub.Config({ tex2jax: { inlineMath: [["$","$"], ["\\(","\\)"]], processEscapes: true }});

Min, Max and Sum

Write a program which reads a sequence of $n$ integers $a_i (i = 1, 2, ... n)$, and prints the minimum value, maximum value and sum of the sequence.

Input

In the first line, an integer $n$ is given. In the next line, $n$ integers $a_i$ are given in a line.

Output

Print the minimum value, maximum value and sum in a line. Put a single space between the values.

Constraints

$0 < n \leq 10000$

$-1000000 \leq a_i \leq 1000000$

Sample Input

5
10 1 5 4 17

Sample Output

1 17 37

Solution in C# (judge verdict: Accepted)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ITP1_4D
{
    class Program
    {
        //static void Main(string[] args)
        //{
        //    string inputText = Console.ReadLine();
        //    int n = int.Parse(inputText);

        //    inputText = Console.ReadLine();
        //    string[] words = inputText.Split(' ');

        //    if (words.Length < n)
        //    {
        //        return;
        //    }

        //    int[] intArray = new int[n];
        //    for (int i = 0; i < n; ++i)
        //    {
        //        intArray[i] = int.Parse(words[i]);
        //    }

        //    int minIndex = 0;
        //    int maxIndex = 0;
        //    long sum = 0;
        //    for (int i = 0; i < intArray.Length; ++i)
        //    {
        //        sum += intArray[i];
        //        if (intArray[i] < intArray[minIndex])
        //        {
        //            minIndex = i;
        //        }
        //        if (intArray[maxIndex] < intArray[i])
        //        {
        //            maxIndex = i;
        //        }
        //    }

        //    Console.WriteLine("{0} {1} {2}", intArray[minIndex], intArray[maxIndex], sum);
        //}

        static void Main(string[] args)
        {
            var text = Console.ReadLine();
            var count = int.Parse(text);

            text = Console.ReadLine();
            var min = int.MaxValue;
            var max = int.MinValue;
            var sum = 0L;

            var words = text.Split(' ');
            for (var i = 0; i < count; ++i)
            {
                var value = int.Parse(words[i]);
                min = value < min ? value : min;
                max = max < value ? value : max;
                sum += value;
            }

            Console.WriteLine("{0} {1} {2}", min, max, sum);
        }
    }
}