loj#P3917. 「PA 2022」Drzewa rozpinające

「PA 2022」Drzewa rozpinające

题目描述

题目译自 PA 2022 Runda 5 Drzewa rozpinające

给定一个长为 nn 的整数序列 a1,a2,,ana_1,a_2,\ldots,a_n。根据这个序列你可以生成一个 nn 个节点的无向图:节点 iijj 之间(对于 iji\neq j)有 gcd(ai,aj)\gcd(a_i,a_j) 条可区分的边将这两个节点相连。你的任务是计算这个图的生成树数量。如果对于两棵树,其中一棵树包含另一棵树中不存在的边,那么就认为这两棵树不同。因为生成树数量很大,请输出它对 109+710^9+7 取模后的值。

输入格式

输入第一行一个整数 n (1n5 000)n\ (1\le n\le 5\ 000),表示整数序列的长度。

第二行 nn 个整数 a1,a2,,an (1ai5 000)a_1,a_2,\ldots,a_n\ (1\le a_i\le 5\ 000),表示这个整数序列。

输出格式

输出一行一个整数,表示生成的图的生成树个数,对 109+710^9+7 取模。

4
1 2 3 4

24