首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
【
P4451-[国家集训队]整数的lqp拆分【生成函数,特征方程】
】的更多相关文章
洛谷P4451 [国家集训队]整数的lqp拆分 [生成函数]
传送门 题意简述:语文不好不会写,自己看吧 思路如此精妙,代码如此简洁,实是锻炼思维水经验之好题 这种题当然是一眼DP啦. 设\(dp_n\)为把\(n\)拆分后的答案.为了方便我们设\(dp_0=1\) 由题意有 \[ dp_n=[n=0]+\sum_{i=1}^n dp_{n-i}f_i \] 按照套路,我们考虑它的生成函数\(A(x)\) \[ \begin{align*} A(x)&=\sum_n ([n=0]+\sum_{i=1}^n f_i dp_{n-i})x^n\\ &=1…
BZOJ 2173 luoguo P4451 [国家集训队]整数的lqp拆分
整数的lqp拆分 [问题描述] lqp在为出题而烦恼,他完全没有头绪,好烦啊… 他首先想到了整数拆分.整数拆分是个很有趣的问题.给你一个正整数N,对于N的一个整数拆分就是满足任意m>0,a1 ,a2 ,a3…am>0,且a1+a2+a3+…+am=N的一个有序集合.通过长时间的研究我们发现了计算对于N的整数拆分的总数有一个很简单的递推式,但是因为这个递推式实在太简单了,如果出这样的题目,大家会对比赛毫无兴趣的. 然后lqp又想到了斐波那契数.定义F0=0,F1=1,Fn=Fn-1+Fn-2 (…
洛谷P4451 [国家集训队]整数的lqp拆分(生成函数)
题面 传送门 题解 我对生成函数一无所知 我们设\(F(x)\)为斐波那契数列的生成函数,\(G(x)\)为答案的生成函数,那么容易得到递推关系 \[g_n=\sum_{i=0}^{n-1}f_ig_{n-i}+f_n\] 其中\(g_0=0,g_1=1\) 那么写成生成函数的形式就是 \[G=FG+F\] \[G={F\over 1-F}\] 我们考虑一下\(F\),因为 \[F(x)=\sum_{i=1}^\infty f_ix^i\] \[xF(x)=\sum_{i=2}^\infty f…
洛谷 P4451 [国家集训队]整数的lqp拆分
洛谷 这个题目是黑题,本来想打表的,但是表调不出来(我逊毙了)! 然后随便打了一个递推,凑出了样例, 竟然. 竟然.. 竟然... A了!!!!!!! 直接:\(f[i]=f[i-1]*2+f[i-2]~~~f[0]=0,f[1]=1\),恭喜你! code: #include <bits/stdc++.h> using namespace std; typedef long long ll; ll a[86]={0,1,2},n,ans,q[800]; /*void search(ll x)…
P4451 [国家集训队]整数的lqp拆分
#include <bits/stdc++.h> using namespace std; typedef long long LL; inline LL read () { LL res = ;) ;char ch = getchar (); ;ch = getchar();} ) + (res << ) + (ch ^ ) ,ch = getchar(); return res * f ; } LL n; LL a[<<]; signed main () { n=r…
Luogu4451 [国家集训队]整数的lqp拆分
题目链接:洛谷 题目大意:求对于所有$n$的拆分$a_i$,使得$\sum_{i=1}^ma_i=n$,$\prod_{i=1}^mf_{a_i}$之和.其中$f_i$为斐波那契数列的第$i$项. 数据范围:$n\leq 10^6$ 首先不要被这个[国家集训队]给吓到了,其实很简单的. 首先考虑打表,....(逃 显然一眼就能想到卷积,设$F(x)$为$f$的生成函数.则 $$F(x)=\frac{x}{1-x-x^2}$$ $$Ans=\sum_{i=0}^nF^i(x)[x^n]$$ $$=…
[国家集训队]整数的lqp拆分
我们的目标是求$\sum\prod_{i=1}^m F_{a_i}$ 设$f(i) = \sum\prod_{j=1}^i F_{a_j}$那么$f(i - 1) = \sum\prod_{j=1}^{i - 1} F_{a_j}$又有递推式$f(i) = \sum_{j = 1}^{i - 1}f(j) * F_{a_i - j}$ 那么推吧$$f(i) - f(i - 1)$$$$=\sum_{j = 1}^{i - 1}f(j) * F_{a_i - j} - \sum_{j = 1}^{…
[国家集训队]整数的lqp拆分 数学推导 打表找规律
题解: 考场上靠打表找规律切的题,不过严谨的数学推导才是本题精妙所在:求:$\sum\prod_{i=1}^{m}F_{a{i}}$ 设 $f(i)$ 为 $N=i$ 时的答案,$F_{i}$ 为斐波那契数列第 $i$ 项.由于 $a$ 序列是有序的,要求的答案可以表示成:$f(i)=\sum_{j=1}^{i}f(j)*F_{i-j}$由于斐波那契数列第 0 项是 0,显然可以表示成:$f(i)=\sum_{j=1}^{i-1}f(j)*F_{i-j}$考虑一下 $f(i+1)$ 和 $f(i…
P4451-[国家集训队]整数的lqp拆分【生成函数,特征方程】
正题 题目链接:https://www.luogu.com.cn/problem/P4451 题目大意 给出\(n\),对于所有满足\(\sum_{i=1}^ma_i=n\)且\(\forall a_i\in N^+\)的序列求 \[\sum_{m=1}^{\infty}\prod_{i=1}^mFbi_{a_i} \] 其中\(Fbi_x\)表示第\(x\)个斐波那契数 \(1\leq n\leq 10^{10^4}\) 解题思路 因为刚学特征方程所以推的都会写下来,比较冗长 首先考虑斐波那契…
[BZOJ2173]整数的lqp拆分
[题目描述] lqp在为出题而烦恼,他完全没有头绪,好烦啊… 他首先想到了整数拆分.整数拆分是个很有趣的问题.给你一个正整数N,对于N的一个整数拆分就是满足任意m>0,a1 ,a2 ,a3…am>0,且a1+a2+a3+…+am=N的一个有序集合.通过长时间的研究我们发现了计算对于N的整数拆分的总数有一个很简单的递推式,但是因为这个递推式实在太简单了,如果出这样的题目,大家会对比赛毫无兴趣的. 然后lqp又想到了斐波那契数.定义F0=0,F1=1,Fn=Fn-1+Fn-2 (n>1),F…