class BIT: def __init__(self, n): self.n = n self.data = [0]*(n+1) def to_sum(self, i): s = 0 while i > 0: s += self.data[i] i -= (i & -i) return s def add(self, i, x): while i <= self.n: self.data[i] += x i += (i & -i) def get(self, i, j): return self.to_sum(j)-self.to_sum(i-1) N = int(input()) MAX = 2*pow(10,5)+10 Tree = BIT(MAX) A = list(map(int,input().split())) for i in range(N): Tree.add(A[i],1) S = sum(A) MAX = max(A) A.sort() ans = 0 prevx = -1 for x in A: if x == 1: continue if x == prevx: ans += temp continue wari = 0; now = x; fac = 1 for i in range(200000): if now+x-1 >= MAX: wari += Tree.get(now,MAX)*fac break else: wari += Tree.get(now,now+x-1)*fac now += x fac += 1 if now > MAX + x: break #print(wari,S-wari*x) temp = S - wari*x ans += temp prevx = x print(ans)