3872:Library

网址如下:

OpenJudge - 3872:Library

这玩意的dp公式应该很明显吧?

和斐波纳契数列一个样

就是n太大了,最高有十亿,不能用普通的dp来做

经验丰富的可能已经知道了

就是用快速幂加上斐波那契数列通项就行了,虽然f(2)= 2,但是设f(0)= 1就没差了

(斐波纳契数列的通项公式,把A^(n - 1)改成A^(n)就是本题的公式)

想要了解快速幂的,可以看看我之前写的博客:

快速幂算法的一种解决思路-CSDN博客

看其他大佬的也行

代码如下:

#include<cstdio>const int mol = 9901;struct Martix{bool have_val;int n[2][2];Martix():have_val(false){}Martix operator*(const Martix &tmp)const;
}m[1000000];Martix Martix::operator*(const Martix &tmp)const{Martix ans;for(int i = 0; i < 2; i++)for(int j = 0; j < 2; j++)ans.n[i][j] = (n[i][0] * tmp.n[0][j] + n[i][1] * tmp.n[1][j]) % mol;ans.have_val = true;return ans;
}void init(void){m[0].have_val = true;m[0].n[0][0] = m[0].n[1][0] = m[0].n[0][1] = 1;m[0].n[1][1] = 0;
}
void update(int n){if(!m[n - 1].have_val) update(n - 1);m[n] = m[n - 1] * m[n - 1];
}
int get_ans(int n){Martix sum; sum.have_val = false;int cnt = 0;while(n){if(n & 1){if(!m[cnt].have_val) update(cnt);if(sum.have_val) sum = sum * m[cnt];else sum = m[cnt];}n >>= 1; cnt++;}return sum.n[0][0];
}int main(void)
{int n; init();while(scanf("%d", &n) == 1 && n != -1) printf("%d\n", get_ans(n));return 0;
}

饿昏了,干饭干饭

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/3246223.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

看看我发现了什么好东西!FlowUs知识库还有“就业服务站点”?!

不得不说&#xff0c;FlowUs的知识库内容是在是太丰富了, 浏览了一下&#xff0c;发现真有能帮助毕业生的就业信息分享人才政策汇总等我需要的信息&#x1f4a1;&#xff0c;我反手就是一个订阅&#xff0c;怕下次找不到了&#xff01; 在数字化转型的浪潮中&#xff0c;团队和…

代理IP为何难以达到百分百的有效率?

“随着网络技术的不断发展代理IP成为了众多网络用户的重要工具&#xff0c;尤其在需要保护隐私、突破网络限制或进行大规模网络数据抓取等场景下。然而尽管代理IP的应用广泛且功能强大&#xff0c;但在实际应用中&#xff0c;我们不难发现代理IP的有效率往往难以达到百分百。”…

跨境电商账号被封禁?浏览器指纹风险你需要了解一下!

跨境电商运营者在利用海外社媒平台推广产品时&#xff0c;常常会遭遇一个难题&#xff1a;如何在利用这些平台进行市场营销的同时&#xff0c;避免因浏览器指纹识别技术而导致账户被封禁呢&#xff1f;作为资深的跨境电商从业人员&#xff0c;龙哥将分享一些专业见解&#xff0…

Qt中的弹簧:QSpacerItem的用法

Qt是一个跨平台的C++图形用户界面应用程序框架,它提供了丰富的控件和布局管理功能,使得开发复杂的用户界面变得简单。在Qt的布局系统中,QSpacerItem扮演了一个重要的角色,它被用来在界面元素之间添加“弹簧”,以确保布局的灵活性和适应性。 什么是QSpacerItem? QSpacerI…

【sklearn | 7】:scikit-learn项目实战指南

引言 在数据科学和机器学习领域&#xff0c;Python以其简洁的语法和强大的库支持&#xff0c;成为了许多开发者和研究者的首选语言。而在众多Python机器学习库中&#xff0c;scikit-learn以其易用性、灵活性和强大的算法集合&#xff0c;成为了最受欢迎的库之一。本文将深入探…

路由上传一个ui_control参数(uint32类型)控制页面UI显隐

前言&#xff1a;传一个uint32类型的值&#xff0c;通过 按位或操作符&#xff08;|&#xff09;来设置ui_control的值&#xff0c;通过按位与操作符&#xff08;&&#xff09;来检测是否显示或隐藏 简单介绍一下两个概念&#xff1a; 按位与操作符和按位或操作符都是二进…

【漏洞复现】泛微E-Cology WorkflowServiceXml SQL注入漏洞

0x01 产品简介 泛微e-cology是一款由泛微网络科技开发的协同管理平台&#xff0c;支持人力资源、财务、行政等多功能管理和移动办公。 0x02 漏洞概述 泛微OAE-Cology 接口/services/WorkflowServiceXml 存在SQL注入漏洞&#xff0c;可获取数据库权限&#xff0c;导致数据泄露…

移动端APP 如何进行自动化和探索性测试?

在测试设计时最主要依据的就是测试金字塔的测试结构。如果在项目临近发布才开始测试并发现缺陷&#xff0c;这样修复缺陷的成本就会很高&#xff0c;项目的进度也会很不确定。所以&#xff0c;就开发阶段来说&#xff0c;如果把测试分层&#xff0c;在不同的开发阶段都进行测试…

IIS短文件名称POC检测

使用方法 安装python环境 执行此文件 python [命名].py -u http://baidu.com #!/usr/bin/env python # -*- encoding: utf-8 -*- """ File : IIS-ShortName-PoC.py tell : 用于安全人员检测系统是否存在该漏洞&#xff0c;切勿用于非法用途 "…

分类预测 | Matlab实现OOA-LSSVM鱼鹰算法优化最小二乘支持向量机多特征分类预测/故障诊断

分类预测 | Matlab实现OOA-LSSVM鱼鹰算法优化最小二乘支持向量机多特征分类预测/故障诊断 目录 分类预测 | Matlab实现OOA-LSSVM鱼鹰算法优化最小二乘支持向量机多特征分类预测/故障诊断分类效果基本介绍程序设计参考资料 分类效果 基本介绍 分类预测 | Matlab实现OOA-LSSVM鱼…

生物化学基础1 : 蛋白质

生物化学基础1 : 蛋白质 /***************************************************/ /***************************************************/ /***************************************************/ /***************************************************/ /**************…

background-image: linear-gradient 属性hover动画

1.效果 2.代码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport" content"widthdevice-wid…

中霖教育:2024年注册会计师考试

2024年注册会计师考试报名时间已经将于四月份结束&#xff0c;还未开始考试&#xff0c;没有报名的考生可以准备明年的考试。 报名时间&#xff1a;4月8日-4月30日 考试时间&#xff1a;8月23日-8月25日 报名条件&#xff1a;具有专科以上学历&#xff0c;或者具有会计或者相…

docker的/var/run/docker.sock参数 作用是什么

-v /var/run/docker.sock:/var/run/docker.sock 的作用是什么 在工作中常见的容器 都要加上这个参数 -v /var/run/docker.sock:/var/run/docker.sock 其实这是容器跟docker 进程之间通信用的。 如果你的容器需要操作 docker 的资源&#xff0c;那么这个参数必须要有的。 /va…

鸿蒙开发:Universal Keystore Kit(密钥管理服务)【密钥导出(ArkTS)】

密钥导出(ArkTS) 业务需要获取持久化存储的非对称密钥的公钥时使用&#xff0c;当前支持ECC/RSA/ED25519/X25519的公钥导出。 开发步骤 指定密钥别名keyAlias&#xff0c;密钥别名最大长度为64字节。调用接口[exportKeyItem]&#xff0c;传入参数keyAlias和options。 option…

使用ChatGPT完成论文写作全流程提示词分享!

学境思源&#xff0c;一键生成论文初稿&#xff1a; AcademicIdeas - 学境思源AI论文写作 &#xff0c;直接上干货&#xff1a; 1. 文献综述 1.1. 主题聚焦&#xff1a;“我正在写关于[主题]的文献综述&#xff0c;请帮我找到相关的研究。” 1.2. 研究趋势&#xff1a;“请分…

leetcode94. 二叉树的中序遍历,递归法+迭代法。附带前序遍历方法

leetcode94. 二叉树的中序遍历 给定一个二叉树的根节点 root &#xff0c;返回 它的 中序 遍历 。 示例 1&#xff1a; 输入&#xff1a;root [1,null,2,3] 输出&#xff1a;[1,3,2] 示例 2&#xff1a; 输入&#xff1a;root [] 输出&#xff1a;[] 示例 3&#xff1a; …

OpenMv画面畸变

OpenMv画面畸变 在OpenMV中&#xff0c;img.lens_corr函数用于进行镜头畸变校正。镜头畸变是指在图像捕捉过程中&#xff0c;由于镜头本身的光学特性&#xff0c;会使得图像出现变形。 img.lens_corr函数可以对这些畸变进行校正&#xff0c;使图像恢复到较为自然的状态。该函数…

c++入门----类与对象(上)

大家好啊&#xff0c;好久没有更新了。因为本人的愚笨&#xff0c;想与大家分享的话肯定还得自己明白了才能给大家分享吧。所以这几天都在内部消化。好给大家优质的文章。当然我写的肯定还是很有问题的&#xff0c;希望大家可以在评论区里面指出来。好&#xff0c;废话不多说&a…

揭秘物联网“心脏“:智能控制器的无限可能

在飞速发展的物联网时代&#xff0c;我们身边的智能设备越来越多&#xff0c;从智能家居到工业自动化&#xff0c;从智能交通到智慧城市&#xff0c;这些设备的背后&#xff0c;都离不开一个至关重要的“心脏”——物联网智能控制器。那么&#xff0c;这个神秘的控制器究竟有何…