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]卡农相关推荐

  1. bzoj2339[HNOI2011]卡农 dp+容斥

    2339: [HNOI2011]卡农 Time Limit: 10 Sec  Memory Limit: 128 MB Submit: 842  Solved: 510 [Submit][Status ...

  2. [BZOJ2339][HNOI2011]卡农

    [BZOJ2339][HNOI2011]卡农 试题描述 输入 见"试题描述" 输出 见"试题描述" 输入示例 见"试题描述" 输出示例 见& ...

  3. P3214 [HNOI2011] 卡农 题解

    P3214 [HNOI2011] 卡农 文章目录 代码 题解 前言 正文 要素 代码 #include <bits/stdc++.h> using namespace std;#defin ...

  4. [HNOI2011] 卡农 题解

    众所周知卡农是一种复调音乐的写作技法,小余在听卡农音乐时灵感大发,发明了一种新的音乐谱写规则. 他将声音分成 nn 个音阶,并将音乐分成若干个片段.音乐的每个片段都是由 11 到 nn 个音阶构成的和 ...

  5. [HNOI2011]卡农

    题目描述 众所周知卡农是一种复调音乐的写作技法,小余在听卡农音乐时灵感大发,发明了一种新的音乐谱写规则.他将声音分成 n 个音阶,并将音乐分成若干个片段.音乐的每个片段都是由 1 到 n 个音阶构成的 ...

  6. [Luogu P3214] [BZOJ 4339] [HNOI2011]卡农

    洛谷传送门 BZOJ传送门 题目描述 众所周知卡农是一种复调音乐的写作技法,小余在听卡农音乐时灵感大发,发明了一种新的音乐谱写规则.他将声音分成 nnn 个音阶,并将音乐分成若干个片段.音乐的每个片段 ...

  7. BZOJ2339: [HNOI2011]卡农(dp 容斥)

    题意 从$1 - n$中任意选择一些数,选$m$次构成$m$个集合 保证: 集合不为空 任意两个集合不相同 集合内各个元素xor起来等于0 Sol 神仙题Orz 我看到两种做法,一种是洛谷题解上的直接 ...

  8. HNOI2011 卡农

    题目传送门 Description \(n​\)种元素,构成\(m​\)个集合\((n,m\leq 10^6)\),保证集合互不相同且非空,且每个元素总出现次数为偶数,两种方案集合重新排列可互相得到算 ...

  9. 数论三之排列组合Ⅱ——Virus Tree 2,RGB Coloring,123 Triangle,排列计数,排队,卡农

    丝且人一口 Virus Tree 2 description solution code RGB Coloring description solution code 123 Triangle des ...

  10. 平遥摄影展:卡农•布斯克茨和他的「一天的结束」

    平遥国际摄影展,一年一度,端相机人的节日.满街是镜头和摄影背心的攒动.我朋友说:没看到好照片,倒是看到不少好相机.这或许就是中国摄影界的写照,也是平遥摄影展的困境.如果没遇到布斯科茨,或许我真的白来平 ...

最新文章

  1. feachall php_timthumb.php详解
  2. Putty自动登陆远程Linux主机
  3. svn 没有绿色小勾
  4. python 提高文件查询效率_Python 大量小文件存储提高效率的简单示例
  5. hadoop 二次开发DatanodeWriteTimeout设置
  6. excel vb ppap_vb是什么平台-常见问题
  7. java jtextfield 密码_Java Swing实战(三)文本组件JTextField和密码组件JPasswordField
  8. 【python】80行代码实现压缩包密码破解软件,支持zip和rar
  9. 如何复制虚拟机中的数据到真实主机
  10. Proxmox VE 配置桌面虚拟化
  11. 服务器架设无限流量,云服务器架设无限流量
  12. EBS 个性化:个性化设置界面
  13. java 穷举 排列组合_穷举排列组合列表
  14. ES已经安装了ik分词器,仍然报错analyzer [ik_max_word] not found for field
  15. html5实现短信验证修改密码,thinkphp5如何调用云片接口实现发送短信验证码找回密码功能...
  16. Android 复杂的手势处理利用GestureOverView
  17. php 遍历数组 车牌,javascript,html_为什么我最后输出的车牌号全部是数字啊?明明数组里的是字母多啊!,javascript,html - phpStudy...
  18. sqlalchemy mysql 乱码_SQLAlchemyMySQL数据库乱码解决
  19. 北航计算机是啥水平,清华眼中的北航是什么水平?附北航2020年全国录取分数线...
  20. Web自动化css选择器定位法实现

热门文章

  1. 2021前端开发面试题:面试中该如何与HR谈薪资?
  2. android 雷电模拟器 hook,133 对安卓雷电模拟器的折腾
  3. Javaweb新手软件推荐
  4. http://www.jetbrains.com/ 登不上
  5. 瞬态电压抑制二极管参数解析
  6. 学习使用php实现公历农历转换的方法代码
  7. 图书馆图书搜索引擎(全球100多图书馆)
  8. 对模型进行DP处理(DP-SGD+DP-Logits)
  9. WiFi 802.11可调参数说明---信标间隔(Beacon Interval)
  10. 网站改造为百度智能小程序教程,适合所有网站封装