2339: [HNOI2011]卡农
Description
首先去除顺序不同算一种的麻烦,就是最后答案除以总片段数\(2^m-1\)
设\(f_i\)表示安排\(i\)个片段的合法种类
那么对于任何一个包含\(i-1\)个片段的序列(除了发\(f_{i-1}\)的那几个合法序列)都能再找到唯一一个片段使得整个序列变为合法序列(那种和旋是基数个就选上)。但是还有一种特例就是可能这个新选的片段已经在序列里了,这种情况下把这两个相同的片段去掉肯定还是合法序列啊,就是\(f_{i-2}\)
所以总柿子就是\[f_i= A_{2^m-1}^{i-1}-f_{i-1}-f_{i-2}*(i-1)*(2^m+1-i)\]
#include<iostream>
#include<cstdio>
#include<cstring>
#define LL long long
#define M 100000007
using namespace std;LL m,n,j,k,a[1000001],f[1000001],t=1,g=1,d=1;LL pow(LL x,LL y)
{LL z=1;for(y;y>1;y>>=1,x=x*x%M) if(y&1) z=z*x%M;return x*z%M;
}int main()
{a[0]=f[0]=1;scanf("%lld%lld",&n,&m);for(int i=1;i<=n;i++) t=t*2%M; t=(t-1+M)%M;for(int i=1;i<=m;i++) a[i]=a[i-1]*((t-i+1+M)%M)%M,d=d*i%M;for(int i=2;i<=m;i++) f[i]=((a[i-1]-f[i-1]+M-f[i-2]*(i-1)%M*(t-i+2+M)%M)%M+M)%M;printf("%lld",f[m]*pow(d,M-2)%M);
}
转载于:https://www.cnblogs.com/ZUTTER/p/10206298.html
2339: [HNOI2011]卡农相关推荐
- bzoj2339[HNOI2011]卡农 dp+容斥
2339: [HNOI2011]卡农 Time Limit: 10 Sec Memory Limit: 128 MB Submit: 842 Solved: 510 [Submit][Status ...
- [BZOJ2339][HNOI2011]卡农
[BZOJ2339][HNOI2011]卡农 试题描述 输入 见"试题描述" 输出 见"试题描述" 输入示例 见"试题描述" 输出示例 见& ...
- P3214 [HNOI2011] 卡农 题解
P3214 [HNOI2011] 卡农 文章目录 代码 题解 前言 正文 要素 代码 #include <bits/stdc++.h> using namespace std;#defin ...
- [HNOI2011] 卡农 题解
众所周知卡农是一种复调音乐的写作技法,小余在听卡农音乐时灵感大发,发明了一种新的音乐谱写规则. 他将声音分成 nn 个音阶,并将音乐分成若干个片段.音乐的每个片段都是由 11 到 nn 个音阶构成的和 ...
- [HNOI2011]卡农
题目描述 众所周知卡农是一种复调音乐的写作技法,小余在听卡农音乐时灵感大发,发明了一种新的音乐谱写规则.他将声音分成 n 个音阶,并将音乐分成若干个片段.音乐的每个片段都是由 1 到 n 个音阶构成的 ...
- [Luogu P3214] [BZOJ 4339] [HNOI2011]卡农
洛谷传送门 BZOJ传送门 题目描述 众所周知卡农是一种复调音乐的写作技法,小余在听卡农音乐时灵感大发,发明了一种新的音乐谱写规则.他将声音分成 nnn 个音阶,并将音乐分成若干个片段.音乐的每个片段 ...
- BZOJ2339: [HNOI2011]卡农(dp 容斥)
题意 从$1 - n$中任意选择一些数,选$m$次构成$m$个集合 保证: 集合不为空 任意两个集合不相同 集合内各个元素xor起来等于0 Sol 神仙题Orz 我看到两种做法,一种是洛谷题解上的直接 ...
- HNOI2011 卡农
题目传送门 Description \(n\)种元素,构成\(m\)个集合\((n,m\leq 10^6)\),保证集合互不相同且非空,且每个元素总出现次数为偶数,两种方案集合重新排列可互相得到算 ...
- 数论三之排列组合Ⅱ——Virus Tree 2,RGB Coloring,123 Triangle,排列计数,排队,卡农
丝且人一口 Virus Tree 2 description solution code RGB Coloring description solution code 123 Triangle des ...
- 平遥摄影展:卡农•布斯克茨和他的「一天的结束」
平遥国际摄影展,一年一度,端相机人的节日.满街是镜头和摄影背心的攒动.我朋友说:没看到好照片,倒是看到不少好相机.这或许就是中国摄影界的写照,也是平遥摄影展的困境.如果没遇到布斯科茨,或许我真的白来平 ...
最新文章
- feachall php_timthumb.php详解
- Putty自动登陆远程Linux主机
- svn 没有绿色小勾
- python 提高文件查询效率_Python 大量小文件存储提高效率的简单示例
- hadoop 二次开发DatanodeWriteTimeout设置
- excel vb ppap_vb是什么平台-常见问题
- java jtextfield 密码_Java Swing实战(三)文本组件JTextField和密码组件JPasswordField
- 【python】80行代码实现压缩包密码破解软件,支持zip和rar
- 如何复制虚拟机中的数据到真实主机
- Proxmox VE 配置桌面虚拟化
- 服务器架设无限流量,云服务器架设无限流量
- EBS 个性化:个性化设置界面
- java 穷举 排列组合_穷举排列组合列表
- ES已经安装了ik分词器,仍然报错analyzer [ik_max_word] not found for field
- html5实现短信验证修改密码,thinkphp5如何调用云片接口实现发送短信验证码找回密码功能...
- Android 复杂的手势处理利用GestureOverView
- php 遍历数组 车牌,javascript,html_为什么我最后输出的车牌号全部是数字啊?明明数组里的是字母多啊!,javascript,html - phpStudy...
- sqlalchemy mysql 乱码_SQLAlchemyMySQL数据库乱码解决
- 北航计算机是啥水平,清华眼中的北航是什么水平?附北航2020年全国录取分数线...
- Web自动化css选择器定位法实现
热门文章
- 2021前端开发面试题:面试中该如何与HR谈薪资?
- android 雷电模拟器 hook,133 对安卓雷电模拟器的折腾
- Javaweb新手软件推荐
- http://www.jetbrains.com/ 登不上
- 瞬态电压抑制二极管参数解析
- 学习使用php实现公历农历转换的方法代码
- 图书馆图书搜索引擎(全球100多图书馆)
- 对模型进行DP处理(DP-SGD+DP-Logits)
- WiFi 802.11可调参数说明---信标间隔(Beacon Interval)
- 网站改造为百度智能小程序教程,适合所有网站封装