#include<bits/stdc++.h>
using namespace std;
#define int long long
#define maxn 100100
struct node
{
	int val,id;
	bool operator <(const node &p)const{return val<p.val;}
};
int n;node a[maxn];
int ans[maxn];
set<int> s;
signed main()
{
	scanf("%lld",&n);
	for(int i=1;i<=n;i++) scanf("%lld",&a[i].val),a[i].id=i;
	sort(a+1,a+n+1);int lst=a[n].val;
	for(int i=n;i;)
	{
		int r=i,l=i;
		while(l-1>0&&a[l].val==a[l-1].val) l--;
		ans[*s.begin()]+=(lst-a[r].val)*s.size();
		for(int j=l;j<=r;j++) s.insert(a[j].id);
		lst=a[r].val;i=l-1;
	}
	ans[*s.begin()]+=lst*s.size();
	for(int i=1;i<=n;i++) printf("%lld\n",ans[i]);
}