「2017 山东一轮集训 Day7」逆序对
题解:
满满的套路题。。
首先显然从大到小枚举
然后每次生成的逆序对是1----(i-1)的
这样做dp是nk的 复杂度太高了
那我们转化一下问题
变成sigma(ai (ai<i) )=k的方案数
据说是个经典问题。。感觉非常奇妙
先容斥一下,也就是说 总的-至少1个条件不满足+至少2个条件不满足
那考虑一下如何算有x个条件不满足
不满足这个条件就可以等价成ai>=i
那么可以先将ai-i 那么就变成所有数的定义域都变成了自然数 那么方案数就是组合数了
显然我们可以把x个条件-i的和相等的算在一起
令f[i][j]表示在(0,1,2...n)中选i个数和为j的方案数
其实在这里也就是 i个条件和为j
那么这样答案就是先枚举i
ans1=枚举j,f[i][j]*C();
总ans=ans1*(-1)^i
最后的问题就是如何计算f[i][j]
第一次看见这种思路好像是上次zjoi讲课(这是生成不重复集合的经典做法)
由于要保证这些自然数是不同的
所以决策有两种
1。将n-1个数先加1(保证不同)再插入一个1
2。将这n个数都加1
另外由于加的数有可能大于n,所以要减掉f[i-1][j-n-1] (因为这一次填入的一定是n+1,并且所有方案都有)
gi=∑fi,j×(n+k−j−
「2017 山东一轮集训 Day7」逆序对的更多相关文章
- 【LOJ6077】「2017 山东一轮集训 Day7」逆序对 生成函数+组合数+DP
[LOJ6077]「2017 山东一轮集训 Day7」逆序对 题目描述 给定 n,k ,请求出长度为 n的逆序对数恰好为 k 的排列的个数.答案对 109+7 取模. 对于一个长度为 n 的排列 p ...
- loj #6077. 「2017 山东一轮集训 Day7」逆序对
#6077. 「2017 山东一轮集训 Day7」逆序对 题目描述 给定 n,k n, kn,k,请求出长度为 n nn 的逆序对数恰好为 k kk 的排列的个数.答案对 109+7 10 ^ 9 ...
- 题解 「2017 山东一轮集训 Day7」逆序对
题目传送门 Description 给定 $ n, k $,请求出长度为 $ n $ 的逆序对数恰好为 $ k $ 的排列的个数.答案对 $ 10 ^ 9 + 7 $ 取模. 对于一个长度为 $ n ...
- loj6077. 「2017 山东一轮集训 Day7」逆序对
题目描述: loj 题解: 容斥+生成函数. 考虑加入的第$i$个元素对结果的贡献是$[0,i-1]$,我们可以列出生成函数. 长这样:$(1)*(1+x)*(1+x+x^2)*--*(1+x+x^2 ...
- LOJ6077「2017 山东一轮集训 Day7」逆序对 (生成函数+多项式exp?朴素DP!)
题面 给定 n , k n,k n,k ,求长度为 n n n 逆序对个数为 k k k 的排列个数,对 1 e 9 + 7 \rm1e9+7 1e9+7 取模. 1 ≤ n , k ≤ 100 ...
- LOJ #6119. 「2017 山东二轮集训 Day7」国王
Description 在某个神奇的大陆上,有一个国家,这片大陆的所有城市间的道路网可以看做是一棵树,每个城市要么是工业城市,要么是农业城市,这个国家的人认为一条路径是 exciting 的,当且仅当 ...
- loj6119 「2017 山东二轮集训 Day7」国王
题目描述 在某个神奇的大陆上,有一个国家,这片大陆的所有城市间的道路网可以看做是一棵树,每个城市要么是工业城市,要么是农业城市,这个国家的人认为一条路径是 exciting 的,当且仅当这条路径上的工 ...
- loj #6079. 「2017 山东一轮集训 Day7」养猫【最大费用最大流】
首先假设全睡觉,然后用费用流考虑平衡要求建立网络流 把1~n的点看作是i-k+1~k这一段的和,连接(i,i+k,1,e[i]-s[i]),表示把i改成吃饭,能对i~i+k-1这一段的点产生影响:然后 ...
- LOJ6079「2017 山东一轮集训 Day7」养猫
养ImmortalCO k可重区间问题 的增强版:有上下界! 直接都选择s[i],然后再把一些调整到e[i] 考虑通过最大流的“最大”,使得至少每k个有me个e, 通过最大流的“上界”,限制每k个最多 ...
随机推荐
- cdqz2017-test10-rehearsal(CDQ分治&可持久化线段树&单调栈)
题意: 给出n个三元组 e[i]=(si,ti,wi) 第i个三元组的价值为 Σ w[j] ,j 满足以下4个条件: 1.j<i 2.tj<ti 3.sj<si 4.不存在j< ...
- 动态规划之Fib数列类问题应用
一,问题描述 有个小孩上楼梯,共有N阶楼梯,小孩一次可以上1阶,2阶或者3阶.走到N阶楼梯,一共有多少种走法? 二,问题分析 DP之自顶向下分析方式: 爬到第N阶楼梯,一共只有三种情况(全划分,加法原 ...
- JavaScript之获取表格目标数据(TableDom.getTableData())
[声明: 1.博文原创 未经同意转载必究,欢迎相互交流] [声明: 2.博主未知情况下转载,需显著处注明博文来源] [声明: 3.谢谢尊重劳动成果,谢谢理解与配合~] 一.背景 在生产过程和生活 ...
- luogu P3978 [TJOI2015]概率论
看着就是要打表找规律 使用以下代码 for(int i=3;i<=20;i++) { int a1=0,a2=0; for(int j=1;j<i;j++) { for(int k=0;k ...
- django学习~models之查询
一 简介:今天学习models查询的一些东西 二 理解概念 Queryset 定义 从数据库中查询出来的结果一般是一个集合,这个集合叫做 QuerySet 三 细节学习 一 常用的models函数 . ...
- Mask RCNN 学习笔记
下面会介绍基于ResNet50的Mask RCNN网络,其中会涉及到RPN.FPN.ROIAlign以及分类.回归使用的损失函数等 介绍时所采用的MaskRCNN源码(python版本)来源于GitH ...
- Mysql Binlog三种格式介绍及分析【转】
一.Mysql Binlog格式介绍 Mysql binlog日志有三种格式,分别为Statement,MiXED,以及ROW! 1.Statement:每一条会修改数据的sql都会记录在 ...
- ES系列目录
ES系列一.CentOS7安装ES 6.3.1 ES系列二.CentOS7安装ES head6.3.1 ES系列三.基本知识准备 ES系列四.ES6.3常用api之文档类api ES系列五.ES6.3 ...
- oracle 命令行
背景 看到当初竟然记录了命令行,想想自己用了多久才知道了命令行,好像有几年了吧.当时还记得买了两本oracle9的管理书籍,就跟见了九阴真经一样,从头到尾熟悉了好几遍,不过也大部分忘了交给老师了.以下 ...
- SPI、IIC、IIS、UART、CAN、SDIO、GPIO、USB总线协议
SPI.IIC.IIS.UART.CAN.SDIO.GPIO总线协议 SPI(Serial Peripheral Interface:串行外设接口)SPI总线由三条信号线组成:串行时钟(SCLK).串 ...