【AGC006C】Rabbit Exercise 置换】的更多相关文章

题目描述 有\(n\)只兔子站在数轴上.为了方便,将这些兔子标号为\(1\ldots n\).第\(i\)只兔子的初始位置为\(a_i\). 现在这些兔子会按照下面的规则做若干套体操.每一套体操由\(m\)次跳跃组成:在第\(j\)次跳跃的时候,第\(c_j(2≤c_j≤n−1)\)只兔子会等概率随机选择第\(c_j−1\)或\(c_j+1\)只兔子中的一只(不妨设选择了第\(x\)只兔子),然后跳当前位置到关于第\(x\)只兔子对称的点. 这些兔子会按顺序做\(k\)套相同的体操.现在请你求出…
原文链接https://www.cnblogs.com/cly-none/p/9745177.html 题意:数轴上有\(n\)个点,从\(1\)到\(n\)编号.有\(m\)个操作,每次操作给出一个编号\(i \, 1 < i < n\),即把点\(i\)等概率移动到它关于点\(i-1\)的对称点或关于点\(i+1\)的对称点.记顺序执行这\(m\)个操作为完成1次.问完成\(k\)次后,所有点的坐标的期望值是多少. \(n, m \leq 10^5, \, k \leq 10^{18}\)…
传送门 设 \(f_{i,j}\) 表示兔子 \(i\) 在当前 \(j\) 轮的期望位置 对于一次操作 \(f_{i,j+1}=\frac{1}{2}(2f_{i-1,j}-f_{i,j})+\frac{1}{2}(2f_{i+1,j}-f_{i,j})=f_{i-1,j}+f_{i+1,j}-f_{i,j}\) 这个东西就是差分数组上两个位置的交换 相当于是求经过 \(k\) 次长度为 \(m\) 的置换后的位置 只要求每个位置在每个环走 \(k\) 的位置即可 # include <bit…
题目:https://agc006.contest.atcoder.jp/tasks/agc006_c 考虑 \( i \) 号兔子移动后位置的期望,是 \( x_{i+1} + x_{i-1} - x_{i} \) 然后作差分,发现按顺序移动一次,实际上是交换了 \( d_{a_{i}} \) 和 \( d_{a_{i}+1} \) 于是可以先处理出移动一次的置换,然后快速幂: 而这是 \( nlogn \) 的做法,还可以找循环来做到 \( O(n) \) ,可见 Narh 的博客: 就写了…
首先我们可以考虑一下 \(x\) 关于 \(y\) 的对称点的坐标,不难发现就是 \(x + 2 \times (y - x)\),那么期望的增量就会增加 \(2 \times (y - x)\).不难发现我们可以令 \(dp_{i, j}\) 表示 \(j\) 第 \(i\) 次操作(即假设进行了 \(p\) 轮操作,当前是第 \(q\) 次操作,则 \(i = (p - 1) \times m + q\)),则会有转移: \[dp_{i, a_q} += \frac{1}{2} \times…
题意: 有n只兔子,i号兔子开始的时候在a[i]号位置.每一轮操作都将若干只兔子依次进行操作: 加入操作的是b[i]号兔子,就将b[i]号兔子移动到关于b[i]-1号兔子现在所在的位置对称的地方,或者是关于b[i]+1号兔子现在所在的位置对称的地方,两者是等概率的.现在给出每一轮操作的兔子编号及顺序,要你求k轮之后每只兔子的位置的期望.保证操作的兔子编号为2~n-1. 数据范围: 1<=n,每一轮的操作数量<=100000 1<=k<=10^18 思路: 看见k这么大,肯定第一反应…
Portal --> agc006C Solution 啊感觉是好有意思的一道题qwq官方题解里面的说辞也是够皮的哈哈哈..(大概就是说如果你没有意识到那个trick的话这题这辈子都做不出来qwq) 一开始看到那个什么随机跳啊..什么期望值啊..整个人都蒙掉了.. 然而实际上都是假的== 我们考虑一次跳跃,跳完的兔子的期望下标的表达式实际上长这个样子: \[ \frac{1}{2}(2\cdot x_{i-1}-x_i)+\frac{1}{2}(2\cdot x_{i+1}-x_i)=x_{i-…
题目:https://agc006.contest.atcoder.jp/tasks/agc006_c 选了 i 位置后 x[ i ] = x[ i-1 ] + x[ i+1 ] - x[ i ] . 从差分序列来看,选 i 位置后就是 swap( a[ i ] , a[ i+1 ] ) . 一组之后就是一个置换.找一下每个位置所在的环就行了. #include<iostream> #include<cstdio> #include<cstring> #include&…
原文链接https://www.cnblogs.com/zhouzhendong/p/AGC006C.html 题目传送门 - AGC006C 题意 有 $n$ 个兔子,从 $1$ 到 $n$ 编号,第 $i$ 个兔子的初始位置为 $x_i$ ,有 $K$ 次操作,每次操作分 $m$ 步,其中第 $j$ 步用一个数 $a_j$ 描述,这一步的效果是:等概率在 $a_j-1$ 和 $a_j +1$ 中选择一个(假设选择的那个是 $x$),并让兔子 $a_j$ 跳到以兔子 $x$ 为对称中心时,兔子…
题目链接 AtCoder:https://agc006.contest.atcoder.jp/tasks/agc006_c 洛谷:https://www.luogu.org/problemnew/show/AT2164 Solution 注意到设第\(i\)个点的期望位置为\(p_i\),由中点公式可知这个点移动一次的期望位置变成了: \[ p_i'=\frac{2p_{i+1}-p_i+2p_{i-1}-p_i}{2}=p_{i+1}+p_{i-1}-p_i \] 考虑这个序列的差分数组\(\…