Problem:
Score : 200 points

Problem Statement

A shop sells N kinds of fruits, Fruit 1, \ldots, N, at prices of p_1, \ldots, p_N yen per item, respectively. (Yen is the currency of Japan.)

Here, we will choose K kinds of fruits and buy one of each chosen kind. Find the minimum possible total price of those fruits.

Constraints

1 \leq K \leq N \leq 1000

1 \leq p_i \leq 1000

All values in input are integers.

Input

Input is given from Standard Input in the following format:

N K
p_1 p_2 \ldots p_N

Output

Print an integer representing the minimum possible total price of fruits.

Sample Input 1

5 3
50 100 80 120 80

Sample Output 1

210

This shop sells Fruit 1, 2, 3, 4, and 5 for 50 yen, 100 yen, 80 yen, 120 yen, and 80 yen, respectively.

The minimum total price for three kinds of fruits is 50 + 80 + 80 = 210 yen when choosing Fruit 1, 3, and 5.

Sample Input 2

1 1
1000

Sample Output 2

1000

Solution in C# (.NET Core 3.1.201) (judge verdict: Accepted)


using static Algo;
using System;

class Program
{
    static void Main(string[] args)
    {
        int amount = int.Parse(Console.ReadLine().Split(' ')[1]);
        int count = 0;
        int[] num = InputIntArray();
        BubbleSort(num);

        for(int i = 0; i < amount; i++)
        {
            count += num[i];
        }
        Console.WriteLine(count);
    }



}


static class Algo
{
    public static void BubbleSort<T>(T[] a)
        where T : IComparable<T>
    {
        int n = a.Length;
        for (int i = 0; i < n - 1; i++)
            for (int j = n - 1; j > i; j--)
                if (a[j].CompareTo(a[j - 1]) < 0)
                    Swap(ref a[j], ref a[j - 1]);
    }

    public static void Swap<T>(ref T a, ref T b)
    {
        T c = a;
        a = b;
        b = c;
    }

    public static int[] InputIntArray()
    {
        string[] strs = Console.ReadLine().Split(' ');
        int[] num = new int[strs.Length];
        for (int i = 0; i < num.Length; i++)
        {
            num[i] = int.Parse(strs[i]);
        }
       
        return num;
        
    }

    public static float[] InputFloatArray()
    {
        string[] strs = Console.ReadLine().Split(' ');
        float[] num = new float[strs.Length];
        for (int i = 0; i < num.Length; i++)
        {
            num[i] = float.Parse(strs[i]);
        }
        return num;
    }
}