[PA 2022] Drzewa rozpinające

Luogu
IDLGP9264
Time8000ms
Memory512MB
DifficultyP7
2022PA(波兰)
**题目译自 [PA 2022](https://sio2.mimuw.edu.pl/c/pa-2022-1/dashboard/) Runda 5 [Drzewa rozpinające](https://sio2.mimuw.edu.pl/c/pa-2022-1/p/drz/)** 给定一个长为 $n$ 的整数序列 $a_1,a_2,\ldots,a_n$。根据这个序列你可以生成一个 $n$ 个节点的无向图:节点 $i$ 和 $j$ 之间(对于 $i\neq j$)有 $\gcd(a_i,a_j)$ 条可区分的边将这两个节点相连。你的任务是计算这个图的生成树数量。如果对于两棵树,其中一棵树包含另一棵树中不存在的边,那么就认为这两棵树不同。因为生成树数量很大,请输出它对 $10^9+7$ 取模后的值。 ## Input 输入第一行一个整数 $n$,表示整数序列的长度。 第二行 $n$ 个整数 $a_1,a_2,\ldots,a_n$,表示这个整数序列。 ## Output 输出一行一个整数,表示生成的图的生成树个数,对 $10^9+7$ 取模。 [samples] ## Note 对于 $100\%$ 的数据,满足: $1\le n\le 5000, 1\le a_i\le 5000$。
Samples
Input #1
4
1 2 3 4
Output #1
24
API Response (JSON)
{
  "problem": {
    "name": "[PA 2022] Drzewa rozpinające",
    "description": {
      "content": "**题目译自 [PA 2022](https://sio2.mimuw.edu.pl/c/pa-2022-1/dashboard/) Runda 5 [Drzewa rozpinające](https://sio2.mimuw.edu.pl/c/pa-2022-1/p/drz/)** 给定一个长为 $n$ 的整数序列 $a_1,a_2,\\ldots,a_n$。根据这个序列你可以生成一个 $n$",
      "description_type": "Markdown"
    },
    "platform": "Luogu",
    "limit": {
      "time_limit": 8000,
      "memory_limit": 524288
    },
    "difficulty": {
      "LuoguStyle": "P7"
    },
    "is_remote": true,
    "is_sync": true,
    "sync_url": null,
    "sign": "LGP9264"
  },
  "statements": [
    {
      "statement_type": "Markdown",
      "content": "**题目译自 [PA 2022](https://sio2.mimuw.edu.pl/c/pa-2022-1/dashboard/) Runda 5 [Drzewa rozpinające](https://sio2.mimuw.edu.pl/c/pa-2022-1/p/drz/)**\n\n给定一个长为 $n$ 的整数序列 $a_1,a_2,\\ldots,a_n$。根据这个序列你可以生成一个 $n$...",
      "is_translate": false,
      "language": "English"
    }
  ]
}
Full JSON Raw Segments