信息学奥赛一本通1202:Pell数列

信息学奥赛一本通(1202:Pell数列) 1202:Pell数列 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 24392 通过数: 7318 【题目描述】 Pell数列a1,a2,a3,...a1,a2,a3,...的定义是这样的,a1=1,a2=2,...,an=2an−1+an−2(n>2)a1=1,a2=2,...,an=2an−1+an−2(n>2)。 给出一个正整数kk,要求Pell数列的第kk项模上3276732767是多少。 【输入】 第1行是测... 阅读详情

1202:Pell数列


时间限制: 1000 ms         内存限制: 65536 KB
提交数: 61564     通过数: 18119

【题目描述】

Pell数列a1,a2,a3,...的定义是这样的,a1=1,a2=2,...,an=2an−1+an−2(n>2)。

给出一个正整数 k,要求Pell数列的第 k 项模上 32767 是多少。

【输入】

第1行是测试数据的组数 n,后面跟着 n 行输入。每组测试数据占 11 行,包括一个正整数k(1≤k<1000000)。

【输出】

n 行,每行输出对应一个输入。输出应是一个非负整数。

【输入样例】

2
1
8

【输出样例】

1
408

和1189不能说是十分相似只能说是一模一样,用1189的程序还快将近一倍???!!!

1202:60~70ms左右

1189:30~40ms左右 

只不过一个是递归一个是递推,一定要用记忆化,不然超时别怪我

下面是1202的源代码,第六行的if判断也可以写成 if(b[x]!=0) ,这样的话main()函数里的 memset 要去掉

#include<bits/stdc++.h>
using namespace std;
long long n,a,b[1000001];
long long hs(int x)
{
	if(b[x]!=-1)
	{
		return b[x];
	}
	if(x==1)
	{
		return 1;
	}
	else if(x==2)
	{
		return 2;
	}
	else
	{
		b[x]=(2*hs(x-1)+hs(x-2))%32767;
//		cout<<b[x]<<" "<<x<<endl;
		return b[x];
	}
}
int main()
{
	memset(b,-1,sizeof(b));
	cin>>n;
	for(int i=1;i<=n;i++)
	{
		cin>>a;
//		cout<<hs(i)<<endl;
		cout<<hs(a)<<endl;
	}
}

1189源代码:

#include<bits/stdc++.h>
using namespace std;
int k,a[1000001],a1=2;
int main()
{
	a[1]=1;
	a[2]=2;
	cin>>k;
	for(int i=1;i<=k;i++)
	{
		int x;
		cin>>x;
		if(a1>=x)
		{
			cout<<a[x]<<endl;
		}
		else
		{
			for(int i=3;i<=x;i++)
			{
				a[i]=(2*a[i-1]+a[i-2])%32767;
			}
			cout<<a[x]<<endl;
			a1=x;
		}
	}
}

信息学奥赛一本通题目解析:1202:Pell数列(递归函数) a1 = 1a2 = 2对于所有n > 2这意味着,每一项都是前一项的两倍加上前前一项。 阅读详情

相关推荐

信息学奥赛一本通C++语言——1202:Pell数列

【题目描述】 Pell数列a1,a2,a3,…的定义是这样的,a1=1,a2=2,…,an=2an−1+an−2(n>2)。 给出一个正整数 k,要求Pell数列的第 k 项模上 32767 是多少。 【输入】 第1行是测试数据的组数 n,后面跟着 n 行输入。每组测试数据占 1 行,包括一个正整数k(1≤k<1000000)。 【输出】 n 行,每行输出对应一个输入。输出应是一个非负...

子航OIer 2230

信息学奥赛一本通 1202:Pell数列 递归算法

Pell数列a1,a2,a3,...的定义是这样的,a1=1,a2=2,...,an=2an−1+an−2(n>2)。第1行是测试数据的组数 n,后面跟着 n 行输入。每组测试数据占 1 行,包括一个正整数k(1≤k

长春高老师编程 1332

信息学奥赛经典题目解析:Pell数列的递推与优化策略

本文深入解析信息学奥赛经典题目Pell数列,探讨其数学定义与在OpenJudge、ybt等平台上的常见考察形式。文章系统对比了递推、迭代、记忆化递归及矩阵快速幂等多种解法,重点分析了如何避免递归超时、整数溢出等常见错误,并提供了针对不同场景(如多组查询与内存限制)的优化策略与代码实现,帮助选手高效AC并深入理解算法思想。

m3n5b7v8c9x的博客 260

信息学奥赛一本通——1202:Pell数列

递推算法

chen_0227的博客 739

2025-08-19利用opencv检测图片中文字及图片的坐标

该代码实现了图片中中文文本的检测与位置计算功能。主要使用CnOcr库进行OCR识别,结合OpenCV和PIL库处理图像。功能包括:1)检测图片中的中文文本及位置坐标;2)计算每个文本的像素宽度和高度;3)在原图上绘制文本边界框并标注识别结果。代码通过put_chinese_text函数解决中文显示问题,最终输出各文本内容、坐标位置及尺寸信息。适用于需要获取图片中文字精确位置的应用场景。

m0_58149406的博客 395

Triton推理服务器实战:如何为PaddleOCR的ONNX模型配置动态批处理和并发推理

本文详细介绍了如何使用Triton推理服务器为PaddleOCR的ONNX模型配置动态批处理和并发推理,以提升GPU利用率和推理性能。通过实战案例和参数调优指南,帮助开发者解决高并发场景下的性能瓶颈问题,实现从实验室到生产环境的高效部署。

weixin_42527160的博客 426

信息学奥赛一本通:1202:Pell数列

Pell数列a1,a2,a3,...的定义是这样的,a1=1,a2=2,...,an=2an−1+an−2(n>2)。第1行是测试数据的组数 n,后面跟着 n行输入。每组测试数据占 1 行,包括一个正整数k(1≤k

ffsdfg的博客 1506

BEVFusion实战:从零搭建LiDAR-Camera融合的3D目标检测环境(附避坑指南)

本文提供了BEVFusion实战指南,详细讲解如何从零搭建LiDAR-Camera融合的3D目标检测环境。内容涵盖环境配置、数据预处理、模型训练与性能优化等关键步骤,并附有实用的避坑技巧,帮助开发者高效部署这一先进的BEV感知算法。

p4q5r6s7t的博客 514

信息学奥赛一本通 1189:Pell数列 | 1202:Pell数列 | OpenJudge NOI 2.2 1788:Pell数列 | 2.3 1788:Pell数列

【题目链接】 ybt 1189:Pell数列 OpenJudge NOI 2.3 1788:Pell数列 【题目考点】 1. 递推 【解题思路】 递推状态:Pell数列第i项的值,记为aia_iai​ 初始状态:a1=1,a2=2a_1 = 1, a_2 = 2a1​=1,a2​=2 递推关系:题目要求对结果取模32767,那么递推关系为:ai=(2∗ai−1+ai−2)a_i = (2*a_{i-1}+a_{i-2})%32767ai​=(2∗ai−1​+ai−2​)。 该题有多组询问。可以先求出Pel

君义NOIP的博客 7553

07- Rossmann商店销售预测 (Xgboost集成算法) (项目七)

Rossmann在欧洲国家经营着3000多家日化用品超市。目前,Rossmann商店经理的任务是提前6周预测他们的日销售额。商店的销售受到许多因素的影响,包括促销、竞争、学校和国家假日、季节性和地域性。由于数以千计的管理者根据自己的特殊情况预测销售,结果的准确性可能会有很大的差异。 因此使用机器学习算法对销量进行预测,Rossmann要求预测德国1115家商店的6周日销售额。可靠的销售预测使商店经理能够制定有效的员工时间表,提高生产力和积极性。

March_A的博客 2461

Python+Vue计算机毕业设计风电场监控系统的设计与实现7bd6i(程序+LW+源码+部署)

Python3.7.7+Django+Mysql5.7+pip list+HBuilderX(Vscode也行)+Vue+Pychram社区版。2. 前端:vue+css+javascript+jQuery+easyUI+highcharts。2.IDE环境:Python和Python 社区版都可以。Django + Vue +Python+Mysql 等等组成,B/S模式等等。该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程。1. 后端:Python、Vue、Django、Mysql。

华信计算机毕设源码程序 341

信息学奥赛一本通:1202 Pell数列

pell数列 题目描述 Pell数列a1,a2,a3…的定义是这样的:a1=1,a2=2, … ,an=2*an-1+an-2 (n>2)。给出一个正整数k,要求Pell数列的第k项模上32767是多少。 输入 第1行是测试数据的组数n,后面跟着n行输入。每组测试数据占1行,包括一个正整数k (1<=k<1000000)。 输出 n行,每行输出对应一个输入。输出应是一个非负整数...

qwejad的博客 1599

【温室气体数据集】CAMS 发布的温室气体(GHG)数据集总结

【温室气体数据集】CAMS 发布的温室气体(GHG)数据集总结

WW、forever的博客 555

信息学奥赛一本通 1202:Pell数列 (耙耙)

如果递归会超时。用递推。 #include<bits/stdc++.h> using namespace std; int n,a; long long b[1000005]; // 用b做记忆化 int main(){ freopen("cpp.in","r",stdin); freopen("cpp.out","w",stdout); cin>>n; in...

广东省清远市博爱学校—尚贤的博客 965

RT-DETR改进策略【Neck】| GFPN 超越BiFPN 通过跳层连接和跨尺度连接改进RT-DETR颈部网络

本文记录的是利用颈部结构优化RT-DETR的目标检测网络模型。利用改进后的颈部网络,通过跳层连接,避免了在进行反向传播时的梯度消失问题,并且引入跨尺度连接,可以实现不同级别和层次的特征充分融合,获取足够的高层语义信息和低层空间信息交换,从而在大规模变化场景下提高检测性能。GIRAFFEDET: A HEAVY-NECK PARADIGM FOR OBJECT DETECTION-GFPN包含了上述的跳层连接(dense-link和log2nlog _{2} nlog2​n-link)以及跨尺度连接(Quee

Limiiiing的博客 2228

基于STM32F1XX 、HAL库的LTR-303ALS-01 环境光传感器驱动应用C语言程序设计

printf("制造商ID: 0x%02X\r\n", LTR303_ReadManufacID());printf("器件ID: 0x%02X\r\n", LTR303_ReadPartID());LTR-303ALS-01是一款数字环境光传感器(ALS),由Lite-On公司生产。printf("LTR-303ALS初始化失败!printf("LTR-303ALS初始化成功!printf("数据无效\r\n");* @param mode: 0-待机, 1-激活。

PP_Cottage的博客 1033

Pell数列(信息学奥赛一本通-T1202)

【题目描述】 Pell数列a1,a2,a3,...的定义是这样的,a1=1,a2=2,...,an=2an−1+an−2(n>2)。 给出一个正整数k,要求Pell数列的第k项模上32767是多少。 【输入】 第1行是测试数据的组数 n,后面跟着 n 行输入。每组测试数据占 1 行,包括一个正整数k(1≤k<1000000)。 【输出】 n 行,每行输出对应一个输入。输出应...

Alex_McAvoy的博客 9064

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

信息学奥赛一本通在线评测平台的一些bug

所有的在线评测平台应该都有错误吧,多与少而已,信息学奥赛一本通作为目前中学生最为流行的学习书籍之一,如果能够把一些可能的bug补上就更好 1150:求正整数2和n之间的完全数 没有写n的范围,实际为10000以内吧   1156:求π的值 求当最后一项小于10^−6时π的值。 实际结果应为求当最后一项大于等于10^-6时π的值   1180:分数线划定 面试分数线根据计划录取人数的...

flymist的博客 9421

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

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

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

信息学奥赛一本通1189:Pell数列 OpenJudge1788:Pell数列

信息学奥赛一本通1189:Pell数列 OpenJudge1788:Pell数列

JerryHaoui的博客 319

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

电子协会 C语言 3级(21-40)

电子协会 C语言 3级(21-40)

青少年趣味编程 459

【C++】递归例题

1201:菲波那契数列本篇例题均来自于信息学奥赛一本通1201:菲波那契数列时间限制: 1000 ms 内存限制: 65536 KB提交数:43709 通过数: 25800【题目描述】菲波那契数列是指这样的数列: 数列的第一个和第二个数都为1,接下来每个数都等于前面2个数之和。给出一个正整数a,要求菲波那契数列中第a个数是多少。【输入】第1行是测试数据的组数n,后面跟着n行输入。每组测试数据占1行,包括一个正整数a(1<=a<=20)。【输出】

m0_68250740的博客 1164

【信息学奥赛一本通】题解目录

【信息学奥赛一本通】题解目录 信息学奥赛一本通OJ 以下本人做的OJ题解 针对每一道题我都会给出题目考点、解题思路、题解代码。必要时也会给出不同的解题方法。 本人水平有限,如有不足之处,欢迎大家指正。如看过后还有不明白的地方,欢迎在评论区留言。 作者:君义_noip 基础(一) C++语言 第一章 C++语言入门 1001 Hello,World!:点击这里 1002 输出第二个整数:点击这里 1003 对齐输出:点击这里 1004 字符三角形:点击这里 1005 地球人口承载力估计:点击这里 第二章 顺序

君义NOIP的博客 23万+

Pell数列(C++从WrongAnswer到Accepted)

题目: 描述 Pell数列a1, a2, a3, …的定义是这样的,a1 = 1, a2 = 2, … , an = 2 * an − 1 + an - 2 (n > 2)。 给出一个正整数k,要求Pell数列的第k项模上32767是多少。 输入 第1行是测试数据的组数n,后面跟着n行输入。每组测试数据占1行,包括一个正整数k (1 ≤ k < 1000000)。 输出 n行,每行输出...

重庆科技大学XMY的博客 1744

信息学奥赛一本通 题解目录

刷题 很全的知识体系转载:https://blog.youkuaiyun.com/u011815404/article/details/79324003第一部分 C++语言第一章 C++语言入门        T1001 Hello,World!    点击这里    T1002 输出第二个整数    点击这里    T1003 对齐输出    点击这里    T1004 字符三角形    点击这里    T...

asdasdasdasasd1111的博客 13万+

1202:Pell数列

一、题目描述 Pell数列a1,a2,a3,…a1,a2,a3,…的定义是这样的,a1=1,a2=2,…,an=2an−1+an−2(n&amp;gt;2)a1=1,a2=2,…,an=2an−1+an−2(n&amp;gt;2)。 给出一个正整数 kk,要求Pell数列的第 kk 项模上 3276732767 是多少。 输入 第1行是测试数据的组数 nn,后面跟着 nn 行输入。每组测试数据占 11 行,包括一...

weixin_44403431的博客 1253
上一篇: 信息学奥赛一本通1203:扩号匹配问题(栈)
下一篇: 信息学奥赛一本通1209:分数求和
Jsjjsnmsk
博客等级 码龄4年 548粉丝 41原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值