main = do
  li <- getLine
  let n = read li
  li <- getLine
  let ds = map read $ words li
  print $ compute n ds

{-
d1 * d2 + d1 * d3 + ... + d1 * dn = d1 * (d2 + ... + dn)
          d2 * d3 + ... + d2 * dn = d2 * (d3 + ... + dn)
逆の方がいいかな。
0 * d1 +
(d1) * d2 +
(d1 + d2) * d3 + ...
-}
compute :: Int -> [Int] -> Int
compute n ds = sum $ zipWith (*) ds $ scanl (+) 0 ds
