---------------------------------------步履不停,奋勇前进! ------------------------难度真的是蛮大丫!后序补充!…
Problem Desciption: 百度翻译后的汉化: 参见博客:https://www.cnblogs.com/zxcoder/p/11253099.html https://blog.csdn.net/Cassie_zkq/article/details/97255683https://blog.csdn.net/Cassie_zkq/article/details/97255683…
Everything Is Generated In Equal Probability \[ Time Limit: 1000 ms\quad Memory Limit: 131072 kB \] 题意 给出一个 \(N\),以相等的概率生成 \(n\) 且 \(n \in [1, N]\),在以相等的概率生成长度为 \(n\) 的数组,最后将生成的数组扔到 \(CALCULATE\) 函数并返回一个数,问这个数的期望. 思路 先解释一下样例是怎么得来的. 令 \(dp[array]\) 表示…
#include<bits/stdc++.h> using namespace std; int main() { int n,q,l,r; while(cin>>n>>q) { vector<int> a(n); for(int i=0;i<n;i++) cin>>a[i]; while(q--) { cin>>l>>r; vector<int> b(r-l+1); for(int i=0;i<r…
题意:给定一个N,随机从[1,N]里产生一个n, 然后随机产生一个n个数的全排列,求出n的逆序数对的数量并累加ans, 然后随机地取出这个全排列中的一个子序列,重复这个过程,直到为空,求ans在模998244353下的期望 思路:期望仅与长度有关,随手推一下式子 听说有通项公式 #include<bits/stdc++.h> using namespace std; typedef long long ll; typedef unsigned int uint; typedef unsigne…
题意: 给定一个N,随机从[1,N]里产生一个n,然后随机产生一个n个数的全排列,求出n的逆序数对的数量,加到cnt里,然后随机地取出这个全排列中的一个非连续子序列(注意这个子序列可以是原序列),再求出这个子序列的逆序数对,加到cnt里,重复这个过程,直到最后取出的为空. 题解: 先不考虑第一步随机从[1,N]里产生一个n,只考虑n给定的情况,求出了f[n],那么最后的结果就是 $  ans[N]=\frac{\sum_{n=1}^N f[n]}{N} $ 赛时和队友利用找规律法和暴力模拟法推出…
Problem Description One day, Y_UME got an integer N and an interesting program which is shown below: Y_UME wants to play with this program. Firstly, he randomly generates an integer n∈[1,N] in equal probability. And then he randomly generates a permu…
计算一对逆序对的贡献,即在n个数期望要删多少步才能删掉其中的两个数,设f(n)表示此时的期望,则有方程$f[n]=3/4+(\sum_{i=2}^{n}f[i]\cdot c(n-2,i-2))/2^n$,手算(打表)得到f[i]=4/3(代入成立),因此$ans=\sum_{i=1}^{n}(i-1)i/3=1/3(n(n+1)(2n+1)/6-n(n+1)/2)=(n-1)(n+1)/9$ 1 #include<bits/stdc++.h> 2 using namespace std; 3…
-----------------心怀虔诚,奋勇前进,fighting!!!!!! Problem Description: inclusively:          包括一切地;包含地 simultaneously:   同时 index number   : 指数; 索引编号 if and only if:       当且仅当 -----Rough Translation: Input: Output: For each test case, output one line contai…
一. 知识点梳理 (一) 先从工具STL说起: 容器学习了:stack,queue,priority_queue,set/multiset,map/multimap,vector. 1.stack: 栈是一种只能在某一端插入和删除数据的特殊线性表.他按照先进先出的原则存储数据,先进的数据被压入栈底,最后进入的数据在栈顶,需要读数据的时候从栈顶开始弹出数据(最后被压入栈的,最先弹出).因此栈也称先进后出表. 2.queue: 是典型的先进先出容器,FIFO(first-in-first-out),…