0112 - A Milk Shop

#include <algorithm>
#include <iostream>
#include <vector>
using namespace std;

void Slove(int n)	{
	int wait;
	vector<int> vec;

	vec.clear();
	for (int i=0; i<n; ++i)	{
		cin >> wait;
		vec.push_back(wait);
	}
	sort( vec.begin(),vec.end() );
	long long sum=0;
	for (int i=0; i<n-1; ++i)	{
		vec[i+1]+=vec[i];
		sum+=vec[i];
	}
	cout << sum << endl;
}

int main(void)	{
	int n;

	while (cin >> n && n)
		Slove(n);
	return 0;
}

昇順に並び替えて足し上げるだけ。
待ち時間合計デカ過ぎ問題だからlong longでAccept