trang chủ / bài tập / winterhere

Mùa đông đã đến

Đề bài

Mô tả

Cho một dãy gồm n số nguyên dương a1,a2,,an.

Một dãy chỉ số i1<i2<<ik (với k1) được gọi là một nhóm nếu

gcd(ai1,ai2,,aik)>1.

Sức mạnh của một nhóm bằng k·gcd(ai1,ai2,,aik), trong đó k là số phần tử của nhóm.

Hãy tính tổng sức mạnh của tất cả các nhóm có thể có. Vì kết quả có thể rất lớn, in ra phần dư của nó khi chia cho 109+7.

Dữ liệu vào

  • Dòng đầu tiên chứa số nguyên n.
  • Dòng thứ hai chứa n số nguyên a1,a2,,an.

Dữ liệu ra

In ra một số nguyên duy nhất là tổng sức mạnh của tất cả các nhóm, lấy dư cho 109+7.

Ràng buộc

  • 1n2·105
  • 1ai106

Ví dụ

Input Output Giải thích
3
3 3 1
12 Các nhóm hợp lệ là {1}, {2}{1,2} (theo chỉ số), với gcd lần lượt là 3,3,3. Tổng sức mạnh là 1·3+1·3+2·3=12. Phần tử a3=1 không thể tạo nhóm vì gcd luôn bằng 1.
4
2 3 4 6
39 Ví dụ có nhiều nhóm với các gcd 2,3,6. Cộng dồn sức mạnh của tất cả các tập con thỏa mãn cho kết quả 39.

Bình luận

Không có bình luận tại thời điểm này.

gnatmake 12.2.0 a68g 3.1.2 nasm 2.16.1 as_x64 2.46 awk 1.3.4 gcc 16.1.0 csc 6.12.0.200 g++ 16.1.0 g++-themis 16.1.0 g++17 16.1.0 g++20 16.1.0 g++23 16.1.0 clang++ 22.1.6 dmd 2.112.0 dart 3.12.1 gforth 0.7.3 gfortran 12.2.0 go 1.26.3 groovyc 5.0.6 javac 25.0.3 node 26.2.0 kotlinc 2.3.21 sbcl 2.2.9 lua 5.4.8 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.6 pike 8.0 pypy3 7.3.23 python3 3.14.5 racket 8.7 ruby 4.0.5 rustc 1.96.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 tclsh 8.6 bun 1.3.14 deno 2.8.1 v 0.5.1 zig 0.16.0