\(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. 【算法】桶排序(Bucket Sort)(九)

    桶排序(Bucket Sort) 桶排序是计数排序的升级版.它利用了函数的映射关系,高效与否的关键就在于这个映射函数的确定.桶排序 (Bucket sort)的工作的原理:假设输入数据服从均匀分布,将 ...

  2. 896.Montonic Array - LeetCode

    Question 896. Monotonic Array Solution 题目大意: 类似于数学中的减函数,增函数和物理中的加速度为正或为负 思路: 先比较前两个是大于0还是小于0,如果等于0就比 ...

  3. 使用 cookie 的身份验证和授权

    前言 在上一章 学学 dotnet core 中的身份验证和授权-1-概念 中,我们大致明白了身份验证和授权两者的关系.那么在本文中,我们将使用 cookie 来做一个简单的身份验证和授权. 本文中我 ...

  4. Dcoker镜像管理与容器应用

    Dcoker镜像管理与容器应用 docker基于镜像创建容器 相同版本的镜像只允许存在一个 同一个镜像可以创建多个容器 镜像管理 [root@localhost ~]# docker pull cen ...

  5. Camunda如何适配国产数据库达梦

    前言 camunda流程引擎官方支持的数据库有:MySQL .MariaDB .Oracle .DB2 .PostgreSQL .SQL Server.H2.对于其他类型的数据库如何支持,尤其是国产数 ...

  6. 5种在TypeScript中使用的类型保护

    摘要:在本文中,回顾了TypeScript中几个最有用的类型保护,并通过几个例子来了解它们的实际应用. 本文分享自华为云社区<如何在TypeScript中使用类型保护>,作者:Ocean2 ...

  7. canvas简易画布

    今天学习了canvas,利用它做了一个简易版的画板,校验自己所学的知识,分享出来以供大家学习指教.先上效果图. 主要是使用了canvas的stroke和clearReact来实现画板的绘画和橡皮擦功能 ...

  8. vue 封装弹窗组件注意

    父组件 <template> <div> <p @click="onDelete"> 打开 </p> <!-- 弹框 --&g ...

  9. VisionPro · C# · 实时取像

    VisionPro 在C#项目程序中实现实时取像方式,有两种: 1.采用界面控件  CogAcqFifoTool 进行操作,与在VisionPro软件中操作一致: 2.采用界面控件 CogRecord ...

  10. python小题目练习(九)

    题目:将美元转化为人民币 需求:实现如图所示需求  代码展示: """Author:mllContent:将美元转化为人民币Date:2020-11-23"&q ...