Điều hướng chính

Ngôn ngữ

Phím tắt

/
Chuyển đến ô tìm bài
g p
Đi đến bài tập
g c
Đi đến kỳ thi
g u
Đi đến người dùng
?
Mở trợ giúp phím tắt

Bài 1. Chia nhóm (GROUP)

Dễ

  • 100 Điểm
  • 23% Tỉ lệ AC
  • 12 Số AC
  • 256M Bộ nhớ giới hạn
  • 1.0s Giới hạn thời gian

Mark là CEO của tập đoàn Space X, ông được phân công làm công tác tổ chức cho toàn bộ nhân viên của tập đoàn đi tham quan các trạm không gian. Tập đoàn có \(n\) nhân viên, nhân viên thứ \(i\) có mã số nhân viên là \(a_i\).

Mark sẽ chia nhân viên của tập đoàn thành 2 nhóm, nhóm A và nhóm B, mỗi nhóm cần ít nhất một nhân viên. Để tạo sự gắn kết giữa các thành viên, mỗi nhóm sẽ chọn một mã màu để đại diện cho nhóm mình, mã màu có giá trị trong khoảng từ \(1\) tới \(10^9\) sao cho mã màu được chọn sẽ nhỏ hơn hoặc bằng mã số nhỏ nhất của các thành viên trong nhóm. Hai cách chia được gọi là khác nhau nếu một nhân viên thuộc một nhóm khác hoặc có một mã màu khác trong hai cách chia.

Hãy giúp Mark đếm số cách chia nhóm khác nhau cho kế hoạch của mình. Vì số cách chia có thể rất lớn, kết quả được ghi ra sau khi lấy modulo cho \((10^9+7)\).

Input

Cho trong file GROUP.INP, có cấu trúc:

  • Dòng 1: Chứa số nguyên dương \(n\), là số nhân viên của tập đoàn \((2 \le n \le 10^5)\).
  • Dòng 2: Chứa \(n\) số nguyên dương \(a_1,a_2,\ldots,a_n\), là mã số của các nhân viên \((1 \le a_i \le 10^9)\).

Các số trên cùng một dòng được ghi cách nhau ít nhất một dấu cách.

Output

Ghi ra file GROUP.OUT:

  • Dòng 1: Ghi một số nguyên duy nhất là kết quả của bài toán.

Example

Test 1

Input

sample 2 1 2

Output

sample 4

Note

Với \(n=2\), \(a_1=1\) và \(a_2=2\):

    - Trường hợp 1: Nhóm A gồm $a_1=1$ (min=1) nên có 1 cách chọn mã màu; nhóm B gồm $a_2=2$ (min=2) nên có 2 cách chọn mã màu. Ta được $1 \times 2 = 2$ cách chia.
    - Trường hợp 2: Nhóm A gồm $a_2=2$ (min=2) có 2 cách chọn mã màu; nhóm B gồm $a_1=1$ (min=1) có 1 cách chọn mã màu. Ta được $2 \times 1 = 2$ cách chia.

    Tổng lại có 4 cách chia.

Test 2

Input

sample 2 2 3

Output

sample 12

Note

Với \(n=2\), \(a_1=2\) và \(a_2=3\):

    - Trường hợp 1: Nhóm A gồm $a_1=2$ (min=2) có 2 cách chọn màu; nhóm B gồm $a_2=3$ (min=3) có 3 cách chọn màu. Ta được $2 \times 3 = 6$ cách.
    - Trường hợp 2: Đổi vai trò nhóm A và B, ta được thêm 6 cách nữa.

    Tổng lại có 12 cách chia.

Test 3

Input

sample 3 1 2 3

Output

sample 14

Note

Với \(n=3\), \(a_1=1, a_2=2, a_3=3\). Các cách chia thành 2 nhóm tập hợp là:

    - $\{1\}$ và $\{2, 3\}$: Nhóm thứ nhất có min=1 (1 màu), nhóm thứ hai có min=2 (2 màu). Có $1 \times 2 = 2$ cách chọn màu. Hoán đổi A và B ta có $2 \times 2 = 4$ cách.
    - $\{1, 3\}$ và $\{2\}$: Nhóm thứ nhất có min=1 (1 màu), nhóm thứ hai có min=2 (2 màu). Tương tự có 4 cách.
    - $\{1, 2\}$ và $\{3\}$: Nhóm thứ nhất có min=1 (1 màu), nhóm thứ hai có min=3 (3 màu). Có $1 \times 3 = 3$ cách. Hoán đổi A và B ta có $3 \times 2 = 6$ cách.

    Tổng số cách chia: $4 + 4 + 6 = 14$ cách.

Scoring

  • 40% số test tương ứng với 40% số điểm có \(n \le 20\).
  • 40% số test tương ứng với 40% số điểm có \(n \le 30\) và \(a_i \le n\) với mọi \(i\).
  • 20% số test tương ứng với 20% số điểm còn lại không có ràng buộc gì thêm.

Bình luận

Chưa có bình luận nào.