Problem:
割り勘

あなたは ICPC 2019 Yokohama Regional 国内予選の健闘を祈るためのパーティを企画した．このパーティの参加者は N 人である．

このパーティの開催には合計で M 円の費用が必要となるため，N 人の参加者からそれぞれ M/N 円を集めることにした．M は N で割り切れる金額となったため，余りについて心配する必要はない．

i 番目の参加者の今日の所持金は Ai 円である．M/N 円を払うことができない場合には，今日の所持金をすべて払ってもらい，足りない分は後日払ってもらうこととする．

あなたは今日のうちにパーティの開催費用をいくら集めることができるだろうか？

Input

入力は最大で 50 個のデータセットからなる． 各データセットは次の形式で表される．

N M
A1 A2 ... AN

データセットは 2 行からなる．1 行目にはパーティの参加者の数 N と，かかった費用 M が与えられる．N と M は整数であり，それぞれ 2 ≤ N ≤ 100，N ≤ M ≤ 10 000 が成り立つ．また，M は N の倍数である．2 行目には N 人の参加者のそれぞれの所持金が与えられる．Ai は i 番目の参加者の所持金を表す整数であり，1 ≤ Ai ≤ 10 000 である．

入力の終わりは，2 個の 0 だけからなる行で表される．

Output

各データセットについて，今日のうちに集めることができるパーティの開催費用を 1 行で出力せよ．

Sample Input

3 300
120 100 80
3 30
10 20 5
4 1000
100 200 300 400
5 5
2523 8430 3 4199 632
0 0

Output for the Sample Input

280
25
800
5

ひとつめのデータセットでは 1 人あたりの支払いは 100 円である．1 番目と 2 番目の参加者は 100 円を支払うことができるが，3 番目の参加者は 100 円を支払うことができないため，所持金である 80 円を支払ってもらい，足りない 20 円は後日支払ってもらうこととする．今日のうちに集めることができるのは 100+100+80=280 円である．

Solution in JAVA (judge verdict: Accepted)

import java.util.*;
public class Main{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        while(true){
            int N = sc.nextInt();
            int M = sc.nextInt();
            if(N == 0)break;
            int ans = 0;
            int price = M / N;
            for(int i = 0 ; i < N ; i++){
                int a = sc.nextInt();
                if(a < price)
                    ans += a;
                else
                    ans += price;
            }
            System.out.println(ans);
        }
    }
}