Files
2026-10-20 11:53:35 +00:00

88 lines
1.8 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# P15569 [COCI 2025/2026 #5] 结构 / Struktura
## 题目背景
本题满分 $110$。
## 题目描述
Petar 和 Ivana 在漫长的冬日下午感到无聊,于是发明了一个数字游戏。
Petar 在纸上随机写下 $n$ 个数,每个数都**独立地、等概率地**从 $1$ 到 $k$ 之间选择,形成数组 $a$。
Ivana 说她特别喜欢某些数组,因为它们有一种“隐藏的平衡”,她称这种数组为**结构(structure)**。当且仅当满足以下条件时,数组 $a$ 是结构:
- 整数 $1,2,\dots,n$ 在数组中各出现恰好一次。
- 对每个下标 $i$($1 \le i \le n$),都有 $|a_i + i - n - 1| \le 1$。
Ivana 想知道:Petar 完全随机生成数组 $a$ 时,得到结构的概率是多少。
可以证明答案总能表示为分数 $\dfrac{P}{Q}$,其中 $P$ 为整数,$Q$ 为正整数且不被 $10^9+7$ 整除。
## 输入格式
输入一行两个自然数 $n,k$($1 \le n,k \le 10^9$)。
## 输出格式
输出一个整数,表示所求概率在模 $10^9+7$ 意义下的值。
## 输入输出样例 #1
### 输入 #1
```
2 1
```
### 输出 #1
```
0
```
## 输入输出样例 #2
### 输入 #2
```
2 2
```
### 输出 #2
```
500000004
```
## 输入输出样例 #3
### 输入 #3
```
7 94
```
### 输出 #3
```
100976822
```
## 说明/提示
#### 【样例解释】
样例 #2 解释:
Petar 可能写出的数组共有 $2^2=4$ 个:$(1,1),(1,2),(2,1),(2,2)$。其中结构是 $(1,2)$ 与 $(2,1)$,概率为 $\dfrac{2}{4}$,因此输出 $2 \cdot 4^{-1} \bmod (10^9+7)=500000004$。
#### 【子任务】
| 子任务 | 分值 | 限制 |
| :----: | :--: | :--: |
| $1$ | $17$ | $n,k \le 7$ |
| $2$ | $23$ | $n \le 7$,$k \le 100$ |
| $3$ | $19$ | $n \le 20$,$k \le 100$ |
| $4$ | $25$ | $n,k \le 10^6$ |
| $5$ | $26$ | 无额外限制 |