GTY's birthday gift
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)
Total Submission(s): 1286 Accepted Submission(s): 502
Problem Description
FFZ's
birthday is coming. GTY wants to give a gift to ZZF. He asked his gay
friends what he should give to ZZF. One of them said, 'Nothing is more
interesting than a number multiset.' So GTY decided to make a multiset
for ZZF. Multiset can contain elements with same values. Because GTY
wants to finish the gift as soon as possible, he will use JURUO magic.
It allows him to choose two numbers a and b(a,b∈S), and add a+b
to the multiset. GTY can use the magic for k times, and he wants the
sum of the multiset is maximum, because the larger the sum is, the
happier FFZ will be. You need to help him calculate the maximum sum of
the multiset.
Input
Multi test cases (about 3) . The first line contains two integers n and k (2≤n≤100000,1≤k≤1000000000). The second line contains n elements ai (1≤ai≤100000)separated by spaces , indicating the multiset S .
Output
For each case , print the maximum sum of the multiset (mod 10000007).
Sample Input
Sample Output
Source
题意:给出一个集合s,集合中的有个初始元素集合,现在的规则是从这些元素中选出两个最大的分别为 a,b,将 a+b 重新添加进集合,然后依次操作 k 次,问最终的元素集合的和。
例如 : 3 6 2 --> 9 6 3 2 --> 15 9 6 3 2 操作两次之后结果为 35
题解:从题目中我们可以知道每次选出的两个数构成了斐波拉契数列,得到递推式 f[i] = f[i-1]+f[i-2],然后我们可以看出第i步求出的和为 sum[i] = sum[i-1]+f[i+1] = sum[i]+f[i]+f[i-1] 我们要求的最终结果是sum[k] 所以我们可以构造矩阵来做.
构造矩阵的方法如下(图丑死了。。。别怪我):
aaarticlea/png;base64,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" alt="" width="516" height="233" />
解出 a - j 即可。
(sum[i],f[i+1],f[i]) = ((1,1,1),(0,1,1),(0,1,0))*(sum[i-1],f[i],f[i-1])
所以此递推式的特征矩阵为 M = ((1,1,1),(0,1,1),(0,1,0))
然后求出 A = M^k
最终结果为 A[0][0]*sum[1]+A[0][1]*f[2]+A[0][2]*f[1]
#include <iostream>
#include <cstdio>
#include <cstring>
#include <queue>
#include <algorithm>
#include <math.h>
using namespace std;
typedef long long LL;
const LL mod = ;
const int N = ;
struct Matrix
{
LL v[][];
Matrix(){memset(v,,sizeof(v));}
}ori;
LL n,k,a[N];
Matrix mult(Matrix a,Matrix b){
Matrix temp;
for(int i=;i<;i++){
for(int j=;j<;j++){
for(int k=;k<;k++){
temp.v[i][j] = (temp.v[i][j]+(a.v[i][k]*b.v[k][j])%mod)%mod;
}
}
}
return temp;
}
Matrix pow_mod(Matrix a,LL n){
Matrix ans;
for(int i=;i<;i++){
ans.v[i][i] = ;
}
while(n){
if(n&) ans = mult(ans,a);
a = mult(a,a);
n>>=;
}
return ans;
}
int main()
{
ori.v[][]=,ori.v[][]=,ori.v[][]=;
ori.v[][]=,ori.v[][]=,ori.v[][]=;
ori.v[][]=,ori.v[][]=,ori.v[][]=;
while(scanf("%lld%lld",&n,&k)!=EOF)
{
LL max1=-,max2=-,sum=;
for(int i=; i<=n; i++)
{
scanf("%lld",&a[i]);
if(a[i]>max1){
max2 = max1;
max1 = a[i];
}else if(a[i]>max2&&a[i]<=max1){
max2 = a[i];
}
sum+=a[i];
}
// printf("%lld %lld %lld\n",sum,max1,max2);
Matrix A = pow_mod(ori,k);
LL ans = (A.v[][]*sum%mod+A.v[][]*max1%mod+A.v[][]*max2%mod)%mod;
printf("%lld\n",ans);
}
return ;
}
- ZZNU 2182 矩阵dp (矩阵快速幂+递推式 || 杜教BM)
题目链接:http://47.93.249.116/problem.php?id=2182 题目描述 河神喜欢吃零食,有三种最喜欢的零食,鱼干,猪肉脯,巧克力.他每小时会选择一种吃一包. 不幸的是,医 ...
- HDU2604:Queuing(矩阵快速幂+递推)
传送门 题意 长为len的字符串只由'f','m'构成,有2^len种情况,问在其中不包含'fmf','fff'的字符串有多少个,此处将队列换成字符串 分析 矩阵快速幂写的比较崩,手生了,多练! 用f ...
- hdu 2842(矩阵高速幂+递推)
题意:一个中国环的游戏,规则是一个木棒上有n个环.第一个环是能够任意放上或拆下的,剩下的环x假设想放上或拆下必须前一个环x-1是放上的且前x-2个环所有是拆下的,问n个环最少多少次操作能够所有拆掉. ...
- POJ3233:Matrix Power Series(矩阵快速幂+递推式)
传送门 题意 给出n,m,k,求 \[\sum_{i=1}^kA^i\] A是矩阵 分析 我们首先会想到等比公式,然后得到这样一个式子: \[\frac{A^{k+1}-E}{A-E}\] 发现要用矩 ...
- HDU 3802 矩阵快速幂 化简递推式子 加一点点二次剩余知识
求$G(a,b,n,p) = (a^{\frac {p-1}{2}}+1)(b^{\frac{p-1}{2}}+1)[(\sqrt{a} + \sqrt{b})^{2F_n} + (\sqrt{a} ...
- HDU 1757 矩阵快速幂加速递推
题意: 已知: 当x<10时:f(x)=x 否则:f(x) = a0 * f(x-1) + a1 * f(x-2) + a2 * f(x-3) + --+ a9 * f(x-10); 求:f(x ...
- HDU 4686 矩阵快速幂 Arc of Dream
由式子的性质发现都是线性的,考虑构造矩阵,先有式子,a[i] = ax * a[i-1] + ay; b[i] = bx*b[i-1] +by; a[i]*b[i] = ax*bx*a[i-1]*b[ ...
- hdu 5015 矩阵快速幂(可用作模板)
转载:http://blog.csdn.net/wdcjdtc/article/details/39318847 之前各种犯傻 推了好久这个东西.. 后来灵关一闪 就搞定了.. 矩阵的题目,就是构造 ...
- HDU 2855 (矩阵快速幂)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2855 题目大意:求$S(n)=\sum_{k=0}^{n}C_{n}^{k}Fibonacci(k)$ ...
随机推荐
- iOS版微信开发小结(微信支付,APP跳转微信公众号)
最近公司心血来潮,一心要搞微信.废话不多说,直接上干货. 开发前准备: 1.在微信开发者平台获取开发者认证:(一年300元人民币) PS:具体流程按照微信流程指示操作即可,在这就不废话了. 2.下载微 ...
- Angular 2018 All in One
Angular 2018 https://cli.angular.io/ v7.0.6 https://angular.io/ https://angular.cn/ v7.0.4 $ npm i - ...
- ASP.NET页面之间传值Server.Transfer(4)
这个才可以说是面象对象开发所使用的方法,其使用Server.Transfer方法把流程从当前页面引导到另一个页面中,新的页面使用前一个页面的应答流,所以这个方法是完全面象对象的,简洁有效. Serve ...
- C&C++——库头文件及其作用
1. 一些头文件的作用::ANSI C.提供断言,assert(表达式):GCC.GTK,GNOME的基础库,提供很多有用的函数,如有数据结构操作函数.使用glib只需要包含:GCC.文件夹操作函数. ...
- 【BZOJ 1492】 [NOI2007]货币兑换Cash 斜率优化DP
先说一下斜率优化:这是一种经典的dp优化,是OI中利用数形结合的思想解决问题的典范,通常用于优化dp,有时候其他的一些决策优化也会用到,看待他的角度一般有两种,但均将决策看为二维坐标系上的点,并转化为 ...
- 阿里巴巴前端面试parseInt()函数的面试题
JavaScript 是弱类型语言,为了保证数值的有效性,在处理数值的时候,我们可以对数值字符串进行强行转换.如 parseInt 取整和 parseFloat 取浮点数.Java 也有 Intege ...
- typescript的入门
命令行使用tsc 1.安装typescript npm install -g typescript 2.新建一个index.ts 输入export hello class{} 3.编译 tsc ind ...
- bzoj 1692: [Usaco2007 Dec]队列变换 ——二分+hash
Description FJ打算带他的N(1 <= N <= 30,000)头奶牛去参加一年一度的“全美农场主大奖赛”.在这场比赛中,每个参赛者都必须让他的奶牛排成一列,然后领她们从裁判席 ...
- 金中欢乐赛 C题
题目传送门 这道题 hash就可以写了 弄了半天有点智障 强行压一压就okay了的说 #include<cstdio> #include<cstring> #include&l ...
- 【Atcoder】ARC083 D - Restoring Road Network
[算法]图论,最短路? [题意]原图为无向连通图,现给定原图的最短路矩阵,求原图最小边权和,n<=300. [题解]要求最小边权和下,原图的所有边一定是所连两端点的最短路. 那么现在将所有最短路 ...