当前位置: 首页 > ai >正文

[蓝桥杯 2025 国 B] 斐波那契字符串一一题解

[P12833 蓝桥杯 2025 国 B] 斐波那契字符串 - 洛谷 (luogu.com.cn)
本题为2025.6.15号蓝桥国CB真题,笔者在此做一个记录。比赛中笔者想出来了,但是晚上复盘时发现在计算代码中:int c=(x%M+y%M)%M,在比赛中忘记对这里的加法取模了,导致加法这里到后续会爆,悲…,一失足成千古恨,希望大家引以为戒TT

  • (S_{n-2}) 内部的逆序对:数量为 fib[n-2]

  • (S_{n-1}) 内部的逆序对:数量为 fib[n-1]

  • 跨部分逆序对:(S_{n-2}) 中的每个 ‘1’ 与 (S_{n-1}) 中的每个 ‘0’ 配对。

  • ones_{n-2} 为 (S_{n-2}) 中 ‘1’ 的数量,等于斐波那契数 (F_{n-3})。

  • zeros_{n-1} 为 (S_{n-1}) 中 ‘0’ 的数量,等于斐波那契数 (F_{n-3})。

  • 因此跨部分数量为 ((F_{n-3})^2),即代码中的 c * c(其中 c = F_{n-3})。

//ACcode
#include <iostream>
#define int long long
using namespace std;
const int N=1e5+10;
const int M=1e9+7;
int fib[N];
void fibc(){fib[1]=0,fib[2]=0,fib[3]=0,fib[4]=1;int x=0;int y=1;for(int i=5;i<=100000;i++){int c=(x%M+y%M)%M;fib[i]=((c%M*c%M)%M+(fib[i-2]%M+fib[i-1]%M)%M)%M;x=y;y=c;}
}
signed main()
{fibc();int t;int n;cin>>t;while(t--){cin>>n;cout<<fib[n]<<endl;}return 0;
}

在这里插入图片描述

http://www.xdnf.cn/news/14309.html

相关文章:

  • 论文笔记 <交通灯> <多智能体>DERLight双重经验回放灯机制
  • HTML5+JS实现一个简单的SVG 贝塞尔曲线可视化设计器,通过几个点移动位置,控制曲线的方向
  • 路由器端口映射怎么设置?本地固定内网IP给外面网络连接访问
  • [深度学习]目标检测YOLO v3
  • AI视野:视频处理AI排行榜Top10 | 2025年05月
  • 解决电脑第一排按键功能失效的问题
  • 多维数据透视分析应用案例与深度解析
  • Micro-F1分数(多选)
  • 基于Python爬虫的房价可视化
  • android为什么不用sqlite数据库,而要用Realm
  • Python使用requests调用接口
  • SQL Server从入门到项目实践(超值版)读书笔记 17
  • 目标分割数据集大全「包含分割数据标注+训练脚本」 (持续原地更新)
  • Level1.8for循环
  • 【Create my OS】5 内核线程
  • 分割数据集 - 航拍水域分割数据集下载
  • SylixOS armv7 任务切换
  • 【C判断a*a+b*b=c*c且a>=b>0且输出最小的】2022-6-26
  • 包含30个APP客户端UI界面的psd适用于旅游酒店项目
  • 基于ssm智慧乡村旅游服务平台微信小程序源码数据库文档
  • 青少年编程与数学 01-011 系统软件简介 21 杀毒软件及安全软件
  • C++ 网络编程(12)利用单例逻辑实现逻辑类
  • 初探 Pytest:编写并运行你的第一个测试用例
  • .net6接口多个实现类使用特性标记并解析
  • React-router实现原理剖析
  • 基于SVD的推荐系统:详尽的原理与实践解析
  • 网络安全相关概念与技术详解
  • 高速 PCB 设计的材料选择,第 2 部分
  • ubuntu 22.04 安装部署kibana 7.10.0详细教程
  • Linux——libevent库