A15781 | The Maximum Prefix
时间限制1s
内存限制256MB
通过 / 提交0/0
题目描述
You're going to generate an array $a$ with a length of at most $n$ , where each $a_{i}$ equals either $1$ or $-1$ .
You generate this array in the following way.
- First, you choose some integer $k$ ( $1\le k \le n$ ), which decides the length of $a$ .
- Then, for each $i$ ( $1\le i \le k$ ), you set $a_{i} = 1$ with probability $p_{i}$ , otherwise set $a_{i} = -1$ (with probability $1 - p_{i}$ ).
After the array is generated, you calculate $s_{i} = a_{1} + a_{2} + a_{3}+ \ldots + a_{i}$ . Specially, $s_{0} = 0$ . Then you let $S$ equal to $\displaystyle \max_{i=0}^{k}{s_{i}}$ . That is, $S$ is the maximum prefix sum of the array $a$ .
You are given $n+1$ integers $h_{0} , h_{1}, \ldots ,h_{n}$ . The score of an array $a$ with maximum prefix sum $S$ is $h_{S}$ . Now, for each $k$ , you want to know the expected score for an array of length $k$ modulo $10^9+7$ .
You generate this array in the following way.
- First, you choose some integer $k$ ( $1\le k \le n$ ), which decides the length of $a$ .
- Then, for each $i$ ( $1\le i \le k$ ), you set $a_{i} = 1$ with probability $p_{i}$ , otherwise set $a_{i} = -1$ (with probability $1 - p_{i}$ ).
After the array is generated, you calculate $s_{i} = a_{1} + a_{2} + a_{3}+ \ldots + a_{i}$ . Specially, $s_{0} = 0$ . Then you let $S$ equal to $\displaystyle \max_{i=0}^{k}{s_{i}}$ . That is, $S$ is the maximum prefix sum of the array $a$ .
You are given $n+1$ integers $h_{0} , h_{1}, \ldots ,h_{n}$ . The score of an array $a$ with maximum prefix sum $S$ is $h_{S}$ . Now, for each $k$ , you want to know the expected score for an array of length $k$ modulo $10^9+7$ .
输入格式
Each test contains multiple test cases. The first line contains a single integer $t$ ( $1 \le t \le 5000$ ) — the number of test cases. Their description follows.
The first line contains an integer $n$ ( $1\le n \le 5000$ ).
Then for the following $n$ lines, each line contains two integers $x_{i}$ and $y_{i}$ ( $0 \le x_{i} < 10^9 + 7$ , $1\le y_{i} < 10^9 + 7$ , $x_{i} \le y_{i}$ ), indicating $p_{i} = \frac{x_{i}}{y_{i}}$ .
The next line contains $n+1$ integers $h_{0},h_{1}, \ldots, h_{n}$ ( $0 \le h_{i} < 10^9 + 7$ ).
It is guaranteed that the sum of $n$ over all test cases does not exceed $5000$ .
The first line contains an integer $n$ ( $1\le n \le 5000$ ).
Then for the following $n$ lines, each line contains two integers $x_{i}$ and $y_{i}$ ( $0 \le x_{i} < 10^9 + 7$ , $1\le y_{i} < 10^9 + 7$ , $x_{i} \le y_{i}$ ), indicating $p_{i} = \frac{x_{i}}{y_{i}}$ .
The next line contains $n+1$ integers $h_{0},h_{1}, \ldots, h_{n}$ ( $0 \le h_{i} < 10^9 + 7$ ).
It is guaranteed that the sum of $n$ over all test cases does not exceed $5000$ .
输出格式
For each test case, output $n$ integers in one single line, the $i$ -th of which denotes the expected score for an array of length $i$ , modulo $10^9 + 7$ .
Formally, let $M = 10^9 + 7$ . It can be shown that the answer can be expressed as an irreducible fraction $\frac{p}{q}$ , where $p$ and $q$ are integers and $q \not \equiv 0 \pmod{M}$ . Output the integer equal to $p \cdot q^{-1} \bmod M$ . In other words, output such an integer $x$ that $0 \le x < M$ and $x \cdot q \equiv p \pmod{M}$ .
Formally, let $M = 10^9 + 7$ . It can be shown that the answer can be expressed as an irreducible fraction $\frac{p}{q}$ , where $p$ and $q$ are integers and $q \not \equiv 0 \pmod{M}$ . Output the integer equal to $p \cdot q^{-1} \bmod M$ . In other words, output such an integer $x$ that $0 \le x < M$ and $x \cdot q \equiv p \pmod{M}$ .
输入输出样例
输入 #1
4 2 1 2 1 2 1 2 3 3 1 3 1 4 5 5 1 1 1 1 3 2 5 4 6 0 2 4 3 2 1 5 5 6 5 7 1 6 1 3 4 7 9 0 4 5 2 4
输出 #1
500000005 750000007 1 1 1 200000005 333333339 333333339 500000005 880952391 801587311 781746041 789304620
In the first test case, if we choose $k=1$ , there are $2$ possible arrays with equal probabilities: $[1]$ and $[-1]$ . The $S$ values for them are $1$ and $0$ . So the expected score is $\frac{1}{2}h_{0} + \frac{1}{2}h_{1} = \frac{3}{2}$ . If we choose $k=2$ , there are $4$ possible arrays with equal probabilities: $[1,1]$ , $[1,-1]$ , $[-1,1]$ , $[-1,-1]$ , and the $S$ values for them are $2,1,0,0$ . So the expected score is $\frac{1}{2}h_{0} + \frac{1}{4}h_{1} + \frac{1}{4}h_{2} = \frac{7}{4}$ .
In the second test case, no matter what the $S$ value is, the score is always $1$ , so the expected score is always $1$ .
In the second test case, no matter what the $S$ value is, the score is always $1$ , so the expected score is always $1$ .
C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?
提交通过
评测结果:Accepted