만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

Misha의 곱

면접 대비

시간 제한1초메모리 제한512 MB

요약
서로 다른 정수 n개가 주어질 때, 모든 순서쌍을 이어 붙여 만든 수의 합을 1e9+7로 나눈 나머지를 구한다.
난이도

보통10점 중 4점

유형
수학, 배열, 조합론, 구현
정답자
아직 제출이 없습니다

문제

Misha는 새로운 연산을 만들어 내는 것을 정말 좋아한다. 최근 그는 새로운 연산을 하나 고안했고, 자기 이름을 따서 Misha의 곱이라고 불렀다.

서로 다른 정수 a1,a2,…,ana_1, a_2, \ldots, a_n으로 이루어진 집합의 Misha의 곱은 다음과 같이 정의된다. 이 집합에서 서로 다른 두 수를 골라 만들 수 있는 모든 순서쌍 (ai,aj)(a_i, a_j)를 생각하자. 각 순서쌍에 대해 두 수를 공백 없이 이어 붙여 새로운 수 bijb_{ij}를 만든다. 처음 집합의 Misha의 곱은 모든 bijb_{ij} 값의 합이다.

주어진 정수 집합에 대한 Misha의 곱을 계산하도록 Misha를 도와주자. Misha는 이 값을 109+710^9 + 7로 나눈 나머지로 구하려고 한다.

입력

첫째 줄에는 집합의 원소 개수 nn이 주어진다 (2≤n≤1052 \le n \le 10^5).

둘째 줄에는 집합에 속한 서로 다른 nn개의 정수 a1,a2,…,ana_1, a_2, \ldots, a_n이 주어진다 (1≤ai≤1081 \le a_i \le 10^8).

출력

주어진 수 집합의 Misha의 곱을 109+710^9 + 7로 나눈 나머지를 한 줄에 출력한다.

힌트

예제 입력에는 여섯 개의 순서쌍이 있고, 다음과 같은 bijb_{ij} 값이 나온다: 13, 31, 101, 103, 110, 310. 이들의 합은 668이다.

예제1

  1. 예제 1

    입력
    3
    1 3 10
    
    예상 출력
    668