HDU5171 GTY's birthday gift(矩阵快速幂)

超详细!新手必看STM32-DMA配置与实验(串口使用DMA发送数据) DMA就是:直接存储器访问。DMA传输数据从一个地址空间复制到另一个地址空间,提供在外设和存储器或者存储器和存储器之间的高速数据传输。 阅读详情

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
  
3 2 3 6 2
 

Sample Output
  
35
 

Source
 

Recommend




参考大神博客 :http://blog.youkuaiyun.com/crescent__moon/article/details/43617703


//需要知道的一点是斐波拉契数列  s(n)=a(n+2)-1;

#include<iostream>
#include<cstdio>
#include<string>
#include<cstring>
#include<vector>
#include<cmath>
#include<queue>
#include<stack>
#include<map>
#include<set>
#include<algorithm>

using namespace std;

#define mod 10000007

#define N 100005

typedef __int64 ll;

struct mat{
    ll a[2][2];
    mat(){memset(a,0,sizeof(a));}

    mat operator *(mat b)
    {
    	mat c;
        for(int i=0;i<2;i++)
		  for(int j=0;j<2;j++)
		{
			c.a[i][j]=0;
			for(int k=0;k<2;k++)
				c.a[i][j]=(c.a[i][j]+a[i][k]*b.a[k][j]%mod)%mod;
		}
		return c;
    }

};

ll ans;
int a[N];
mat s,e;

void inint()
{
 	s.a[0][0]=s.a[0][1]=s.a[1][0]=1;
 	s.a[1][1]=0;

 	int i,j;
 	e.a[0][1]=e.a[1][0]=0;
 	for(i=0;i<2;i++)
		e.a[i][i]=1;
}

mat powmul(int k)
{
    int i,j;
    while(k)
	{
		if(k&1)
		{
			e=e*s;
		}
		k>>=1;
		s=s*s;
	}
	return e;
}

int main()
{
	int i,j;
	ll k,n;
	while(~scanf("%I64d%I64d",&n,&k))
	{
		ans=0;
		for(i=0;i<n;i++)
		{
			scanf("%d",&a[i]);
			ans=(ans+a[i])%mod;
		}

		inint();
		sort(a,a+n);

		s=powmul(k+2);

		ans=(ans+(s.a[0][0]-2)*a[n-1]%mod)%mod; //好好看看上面的话,列出数列

		ans=(ans+(s.a[0][1]-1)*a[n-2]%mod)%mod;

		printf("%I64d\n",ans);

	}
	return 0;
}



rk3568 Android12 增加 USB HOST 模式开关(二) 将原有 USB-C 改为 USB-A,并在设置中增加USB工作模式开关可以让用户选择USB端口的功能模式,例如充电、文件传输、或MIDI设备。用户能够灵活管理设备的连接方式,优化数据传输和设备兼容性。 阅读详情

相关推荐

3DMax马克杯制作教程

01 在前视图创建一个【圆柱体】,设置参数,长度为32,高度为82;高度分段12、边数为16;如图所示。 02 点击鼠标右键,把圆柱体转换为可编辑多边形,如图所示。 03 在修改面板中,选择【多边形】层级,在视图中选择所示的面,使用缩放工具稍微缩小一点,如图所示。 04 点击【插入设置】,如图所示。 设置插入数量为2.5mm。 05 点击【挤出设置】,如图所示。 ...

youximoxingEDO的博客 3477

hdu 5171-GTY's birthday gift(矩阵快速幂)

题目及代码:题目大意就是给定一个含有n个元素的序列,进行k次操作---每次操作从序列里面选择两个数,求和并将结果放在这个序列中,使得k次操作后这个序列中的元素和最大。     当然为了满足最大这个要求,那么我们每次当然是从序列中选择最大的两个元素相加,结果放在这个序列中,这个结果比为序列元素的最大元素。这样我们只需要找到原序列中最大的两个元素,累加就可以了。简单化简一下就知道这是一个经典的菲波那

浮躁的人,终究一事无成! 623

DSP28335 ADC模块实战:从寄存器配置到精准数据采集(附代码详解)

本文详细解析DSP28335的ADC模块配置与数据采集实战,涵盖寄存器设置、采样窗口优化、中断处理及代码实现。重点解决ADC精度问题,如采样窗口不足导致数据偏差,提供完整代码示例和调试技巧,助力工程师实现精准数据采集。

kkk56的博客 864

HDU 5171 GTY's birthday gift (矩阵快速幂)

题目链接:HDU 5171 GTY's birthday gift 题意:每次将序列中两个数相加再加入序列中,反复操作k次,问k次操作后的序列和最大是多少。 思路:序列和最大,显然是每次取序列中最大的两个数相加。 3 2 6 3 2 第一步:6 + 3 = 9  1 * 6 + 1 * 3 = 9 第二步:6 + 3 + 6 = 15 2 * 6 + 1 * 3 = 15 第三步

n-1 767

GEE——土地利用分类之监督分类

利用GEE做监督分类,以武汉市为例。 训练器我们选择随机森林;数据选择Landsat-8;训练样本使用的是GEE提供的一种,它把地表分为三类:水体、植被和城市用地。 选择训练样本 用要素集来标记训练样本。每个要素都有一个landcover 的属性,0表示城市用地,1表示植被,2表示水体。 对影像进行分类 其中一部分进行分类器的训练,还有一部分留下来做精度验证。 输出影像及混淆矩阵 print(LABEL_DATA); var wuhan = ee.FeatureCollection('users/

qq_41600680的博客 1万+

别再死记硬背了!用Amesim HCD库亲手搭建单向阀、锥阀、球阀模型(附详细参数设置)

本文详细介绍了如何使用Amesim HCD库从零构建单向阀、锥阀和球阀的仿真模型,帮助工程师摆脱死记硬背,掌握物理建模的核心技巧。通过实战案例和参数设置指南,读者将学会如何优化阀门动态响应、验证流量特性以及处理旋转运动等独特挑战,提升液压系统设计效率。

weixin_29248611的博客 499

hdu 5171 GTY's birthday gift(矩阵快速幂,斐波那契)

GTY's birthday gift Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 1282    Accepted Submission(s): 501 Problem Description FFZ's b

TUT我好菜啊 586

【毕设】基于LoRa的物联网控制器:从原理图到PCB的完整硬件设计指南

本文提供了一份完整的基于LoRa的物联网控制器硬件设计指南,涵盖从系统框图、原理图设计到PCB布局布线的全流程。详细讲解了电源电路、单片机最小系统、信号接口以及LoRa无线模块等核心模块的设计要点与抗干扰技巧,并分享了实用的调试心得,旨在帮助电子、物联网专业学生顺利完成毕业设计,掌握低功耗远距离物联网节点的硬件开发实践。

weixin_42126677的博客 306

HDU 5171 GTY's birthday gift(BestCoder Round #29)

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 multi...

weixin_34341117的博客 162

Red Hat Enterprise Linux 9.2

安装Red Hat Enterprise Linux 9.2

zhurobert的博客 940

Android7以上抓取https数据包-无需root

手机内装一个虚拟机,然后在虚拟机内运行我需要抓包的应用,该虚拟机内是不需要证书验证的。完美解决android7.0以上https无法抓包的问题。

qq_45764684的博客 1454

HDU5171 GTY's birthday gift —— 矩阵快速幂

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5171 GTY's birthday gift Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 1654    Acce

A man can be destroyed, but not defeated. 404

C++软件异常分析概述

本文将详细讲述Windows系统中软件异常的分类以及常用的排查方法,给大家提供一个借鉴与参考。

dvlinker的技术专栏 4万+

HDU 5171 GTY's birthday gift (矩阵快速幂)

GTY's birthday gift Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 408    Accepted Submission(s): 154 Problem Description FFZ's birt

潮鸣り 1230

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

hdu5171GTY's birthday gift+递推+矩阵快速幂

转载请注明出处:http://blog.youkuaiyun.com/xtulollipop 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

xtulollipop 545

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

HDU - 5171 GTY's birthday gift (矩阵快速幂)

题意: 每次将序列中两个数相加再加入序列中,反复操作k次,问k次操作后的序列和最大是多少。 思路: 序列和最大,显然是每次取序列中最大的两个数相加。但是k最大为10亿,实在太大了,所以需要找规律。 输入 3 2 6 3 2 k=1:6 3 = 9 1 * 6 1 * 3 = 9k=2:6 3 6 = 15 2 * 6 1 * 3 = 15k=3:6 3

小G的ACM之路 701

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

HDU 5171 GTY's birthday gift 矩阵快速幂

点击打开链接 GTY's birthday gift Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 225    Accepted Submission(s): 78 Problem Descript

代码改变世界,keep coding。 1792

HDU5171GTY's birthday gift——矩阵快速幂裸题

http://acm.split.hdu.edu.cn/showproblem.php?pid=5171s(n)=s(n-1)+f(n-1)+f(n-2) f(n)=f(n-1)+f(n-2)#include<iostream> #include<algorithm> #include<cstdio> #include<cstring> #define N 3 #define ll long lo

fsdcyr 753

HDU 5171 GTY's birthday gift(矩阵快速幂)

原题地址为: http://acm.hdu.edu.cn/showproblem.php?pid=5171 显然每次会从可重集中选择最大的两个进行操作,设这两数为a,b(a>=b),操作之后的数一定是操作后集合中最大的,下一次选取的数一定是a+b和a,这就形成了一个类似于斐波那契数列的东西,矩阵乘法快速幂求前n项和即可,转移矩阵如下 ⎡⎣⎢100111110⎤⎦⎥⎡⎣⎢Sn−1

楼上小宇___home 577

HDU 5171 GTY's birthday gift 矩阵快速幂

题目链接: hdu: http://acm.hdu.edu.cn/showproblem.php?pid=5171 bc(中文):http://bestcoder.hdu.edu.cn/contests/contest_chineseproblem.php?cid=567&pid=1002 题意: 给你初始的一堆数,每次从中找出两个最大的数相加再加入其中,求最后这n+k个数的和 ...

weixin_30776545的博客 146

【矩阵】HDU 5171 GTY's birthday gift 快速幂

点击打开链接 取最大的两个 构造一个矩阵, 这里构造一个3*3 的 (比较明显 #include #include #include #include #include #include #include #include using namespace std; #include #include #include #include #include #includ

Kewowlo 709

矩阵快速幂(hdu5171GTY's birthday gift)

GTY's birthday gift Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 307    Accepted Submission(s): 111 Problem Description FFZ's birthd

龙崎的专栏 838

hdu 5171 GTY's birthday gift(矩阵快速幂)

GTY's birthday gift Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 554    Accepted Submission(s): 232 Problem Description FFZ's bi

youngkl博客 829

hdu 5171 GTY's birthday gift【矩阵快速幂】【思维】【感受矩阵和数论的神奇】

GTY's birthday gift Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 1176    Accepted Submission(s): 449 Problem Description FFZ's bir

mengxiang000000 684
上一篇: poj3070 Fibonacci(矩阵乘法初学)
下一篇: poj2955 Brackets (区间dp)
左眼皮跳跳~
博客等级 码龄13年 17粉丝 400原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值