\(CF717\ Festival\ Organization\)

Description

一个合法的串定义为:长度在 \([l,r]\) 之间,且只含 \(0,1\),并且不存在连续 \(2\) 个或更多的 \(0\)。

现在要选出 \(k\) 个长度相同的合法的串,问有几种选法,答案模 \(10^9+7\)。

Solution

初始形式比较易得

\[\sum_{i=l+2}^{r+2}\binom{fib_i}{k}
\]

开始化式子

\[\sum_{i=l+2}^{r+2}\frac{fab_i^{\underline{k}}}{k!}
\\
\frac{1}{k!}\sum_{i=l+2}^{r+2}fab_i^{\underline{k}}
\\
\frac{1}{k!}\sum_{i=l+2}^{r+2}\sum_{j=0}^k {k\brack j}fab_i^j
\\
\frac{1}{k!}\sum_{j=0}^k{k \brack j}\sum_{i=l+2}^{r+2}fab_i^j
\]

这个时候其实已经可以枚举 \(j\),然后跑 \(k\) 遍矩阵快速幂了,但是应该过不了。

\[A=\frac{1+\sqrt 5}{2},B=\frac{1-\sqrt 5}{2}
\\
fab_n=A^n-B^n
\\
\frac{1}{k!}\sum_{j=0}^k{k \brack j}\sum_{i=l+2}^{r+2}(A^i-B^i)^j
\\
\frac{1}{k!}\sum_{j=0}^k{k \brack j}\sum_{i=l+2}^{r+2}\sum_{z=0}^j\binom{j}{z}A^{iz}\times B^{(j-z)i}
\]

考虑后面的那个式子

\[\sum_{i=l+2}^{r+2}\sum_{z=0}^j\binom{j}{z}A^{iz}\times B^{(j-z)i}
\\
\sum_{z=0}^j\binom{j}{z}\sum_{i=l+2}^{r+2}(A^{iz} B^{(j-z)i})
\\
\sum_{z=0}^j\binom{j}{z}\sum_{i=l+2}^{r+2}(A^{z} B^{(j-z)})^i
\]

这个是一个等比数列求和公式。

发现 \(5\) 在 \(\mod 1\times 10^9+7\)不存在二次剩余,好,我们扩域

感觉扩域这个手段还是比较常见的?

我们把所有的数字都用 \(a+b\times \sqrt{5}\)表示

我们就可以把所有的数字用一个类似复数的东西表示了

乘法运算类比复数

除法

\[\frac{a+b\sqrt 5}{c+d\sqrt{5}}=\frac{(a+b\sqrt5)(c-d\sqrt 5)}{(c+d\sqrt 5)(c-d\sqrt 5)}=\frac{a\times c-5\times b\times d+(b\times c-a\times d)\sqrt 5}{c^2-5\times d^2}
\]

CF717 Festival Organization的更多相关文章

  1. CF717A Festival Organization(第一类斯特林数,斐波那契数列)

    题目大意:求 $\sum\limits_{n=l}^{r}\dbinom{f_n}{k}\bmod 10^9+7$.其中 $f_n$ 是长度为 $n$ 的 $01$ 序列中,没有连续两个或超过两个 $ ...

  2. CF 717A Festival Organization——斯特林数+递推求通项+扩域

    题目:http://codeforces.com/contest/717/problem/A 是 BJOI2019 勘破神机 的弱化版. 令 \( g[i] \) 表示长为 i .以 1 结尾的方案数 ...

  3. @codeforces - 717A@ Festival Organization

    目录 @description@ @solution@ @accepted code@ @details@ @description@ 一个长度为 n 的 01 序列是好的,当且仅当该序列任意两个 0 ...

  4. Organization SYMMETRIC MULTIPROCESSORS

    COMPUTER ORGANIZATION AND ARCHITECTURE DESIGNING FOR PERFORMANCE NINTH EDITION Figure 17.4 depicts i ...

  5. Symmetric Multiprocessor Organization

    COMPUTER ORGANIZATION AND ARCHITECTURE DESIGNING FOR PERFORMANCE NINTH EDITION

  6. Microsoft CRM 2013 设置默认组织 default organization

    Microsoft CRM 2013 在部署管理器里没有设置默认组织的功能(以前4.0是有的),所以如果安装了多组织并且某些用户在多组织里同时存在这就涉及默认组织的设置问题,或者在安装outlook ...

  7. [BZOJ2788][Poi2012]Festival

    2788: [Poi2012]Festival Time Limit: 30 Sec  Memory Limit: 64 MBSubmit: 187  Solved: 91[Submit][Statu ...

  8. HDU1850 Being a Good Boy in Spring Festival(博弈)

    Being a Good Boy in Spring Festival Time Limit: 1000MS   Memory Limit: 32768KB   64bit IO Format: %I ...

  9. Computer architecture Computer organization

    COMPUTER ORGANIZATION AND ARCHITECTURE DESIGNING FOR PERFORMANCEComputer architectureNINTH EDITION C ...

随机推荐

  1. 使用Spring MVC开发RESTful API(续)

    使用多线程提高REST服务性能 异步处理REST服务,提高服务器吞吐量 使用Runnable异步处理Rest服务 AsyncController.java @RestController @GetMa ...

  2. 我使用Spring AOP实现了用户操作日志功能

    我使用Spring AOP实现了用户操作日志功能 今天答辩完了,复盘了一下系统,发现还是有一些东西值得拿出来和大家分享一下. 需求分析 系统需要对用户的操作进行记录,方便未来溯源 首先想到的就是在每个 ...

  3. 【万字长文】使用 LSM Tree 思想实现一个 KV 数据库

    目录 设计思路 何为 LSM-Treee 参考资料 整体结构 内存表 WAL SSTable 的结构 SSTable 元素和索引的结构 SSTable Tree 内存中的 SSTable 数据查找过程 ...

  4. jQuery其他操作与bootstrap框架

    目录 标签操作 样式操作 位置操作 文本值操作 属性操作 文档处理 事件操作 常见事件 克隆案例 悬浮事件hover() 监听input输入值事件 阻止后续事件 事件委托 动画效果 bootstrap ...

  5. Java有根儿:Class文件以及类加载器

    JVM 是Java的基石,Java从业者需要了解.然而相比JavaSE来讲,不了解JVM的一般来说也不会影响到工作,但是对于有调优需求或者系统架构师的岗位来说,JVM非常重要.JVM不是一个新的知识, ...

  6. python 企业微信发送文件

    import os import json import urllib3 class WinxinApi(object): def __init__(self,corpid,secret,chatid ...

  7. 48. ResNet为什么能训练出1000层的模型

    先回顾一下resnet怎么处理它的梯度消失,使得能处理训练1000层:

  8. JS:函数

    Function:函数 1. 定义一个函数:function functionname(argument) { 代码块 return }: 调用此函数:fn() 2.函数是定义了一种方法,只有被调用才 ...

  9. BPC 脚本

    // //税款计算(现金流) // //2018年5月11日修改,去除之前的送数逻辑,新增BADI计算相关科目 // *SELECT(%010804ZH%, "ID", " ...

  10. SpringCloud Alibaba整合Sentinel

    SpringCloud Alibaba整合Sentinel Sentinel 控制台 1. 概述 Sentinel 提供一个轻量级的开源控制台,它提供机器发现以及健康情况管理.监控(单机和集群),规则 ...