题目

思路

结论题,我不会证明:

找到第一个 \(|S_n| \leq m + 1\),那么答案就是 \(m - |S_{n-2}|\)

证明?我说了我不会,就当结论用吧

这已经很恶心了

然而这题还要打高精度?!

斐波那契数列太大了

注意有很多细节问题

就当留个高精度的优美板子吧!

\(Code\)

#include<cstdio>
#include<cstring>
#include<iostream>
using namespace std;
typedef long long LL; const LL P = 258280327;
char s[1005];
int mm[1005] , f[5010][1005];
LL mo[5010]; inline void Plus(int a , int b , int c)
{
int g = 0;
f[c][0] = max(f[a][0] , f[b][0]);
for(register int i = 1; i <= f[c][0]; i++)
{
f[c][i] = f[a][i] + f[b][i] + g;
g = f[c][i] / 10;
f[c][i] %= 10;
}
if (g) f[c][++f[c][0]] = g;
} inline bool check(int x)
{
if (mm[0] < f[x][0]) return 1;
if (mm[0] > f[x][0]) return 0;
for(register int i = mm[0]; i; i--)
if (mm[i] < f[x][i]) return 1;
else if (mm[i] > f[x][i]) return 0;
return 0;
} inline void print(int x)
{
LL sum = 0;
for(register int i = mm[0]; i; i--) sum = (sum * 10 % P + mm[i]) % P;
printf("%lld\n" , ((sum - 1 - mo[x - 2]) % P + P) % P);
} int main()
{
f[1][f[1][0] = 1] = 1 , f[2][f[2][0] = 1] = 1 , mo[1] = mo[2] = 1;
for(register int i = 3; i <= 5000; i++) Plus(i - 1 , i - 2 , i) , mo[i] = (mo[i - 1] + mo[i - 2]) % P; int T;
scanf("%d" , &T);
for(; T; T--)
{
int n , len;
scanf("%d%s" , &n , s);
memset(mm , 0 , sizeof mm); len = strlen(s);
for(register int i = len - 1; i >= 0; i--) mm[++mm[0]] = s[i] - '0';
int g = 1;
for(register int i = 1; i <= mm[0]; i++)
mm[i] += g , g = mm[i] / 10 , mm[i] %= 10;
if (g) mm[++mm[0]] = g; for(register int i = 3; i <= 5000; i++)
if (check(i)){print(i); break;}
}
}

JZOJ 4213. 【五校联考1day2】对你的爱深不见底的更多相关文章

  1. 【五校联考1day2】JZOJ2020年8月12日提高组T2 我想大声告诉你

    [五校联考1day2]JZOJ2020年8月12日提高组T2 我想大声告诉你 题目 Description 因为小Y 是知名的白富美,所以自然也有很多的追求者,这一天这些追求者打算进行一次游戏来踢出一 ...

  2. 【五校联考1day2】JZOJ2020年8月12日提高组T1 对你的爱深不见底

    [五校联考1day2]JZOJ2020年8月12日提高组T1 对你的爱深不见底 题目 Description 出乎意料的是,幸运E 的小R 居然赢了那个游戏.现在欣喜万分的小R 想要写一张明信片给小Y ...

  3. 五校联考 running (欧拉函数)

    题面 \(solution:\) 讲真吧,这道题真的出得,嗯,太恐怖了.考场上这道题真的把我看懵了,这道题以前是见过的,但欧拉函数?我学过吗?一道容斥都要超时的题目,我都要为我自己点根香了,拿着gcd ...

  4. 【五校联考3day2】C

    題意: 現有一平面直角坐標系,有n個點,每一個點必須向某一個方向發射射線,且任意一條射線必須與某一條坐標軸平行.定義一種發射射線的方案是合法的,則方案必須滿足: 1.沒有一條射線交叉 2.沒有一條射線 ...

  5. 五校联考R1 Day1T3 平面图planar(递推 矩阵快速幂)

    题目链接 我们可以把棱柱拆成有\(n\)条高的矩形,尝试递推. 在计算的过程中,第\(i\)列(\(i\neq n\))只与\(i-1\)列有关,称\(i-1\)列的上面/下面为左上/左下,第\(i\ ...

  6. 五校联考R1 Day2T2 矩阵matrix(容斥)

    题目链接 容易想到容斥,但是很恶心,因为要对行和列都容斥,然后行+列又要容斥.. 于是得到\(O(nm\log)\)的做法. 就有70分了: #include <cstdio> #incl ...

  7. 五校联考模拟赛Day2T2矩阵(容斥原理)

    题意 $n * m$的网格,对其进行黑白染色,问每一行每一列至少有一个黑格子的方案数. Sol 考场上只会$n^3$的dp,还和指数级枚举一个分qwq 设$f[i][j]$表示到了第$i$行,已经有$ ...

  8. NOIP2016提高A组五校联考4总结

    坑爹的第一题,我居然想了足足3个小时,而且还不确定是否正确. 于是,我就在这种情况下心惊胆跳的打了,好在ac了,否则就爆零了. 第二题,树形dp,本来差点就想到了正解,结果时间不够,没打完. 第三题, ...

  9. 【NOIP2016提高A组五校联考4】square

    题目 分析 首先,设\(f_{i,j}\)表示最大的以(i,j)为左下角的正方形的边长. 转移显然,\(f_{i,j}=\max(f_{i-1,j},f_{i,j-1},f_{i-1,j-1})+1\ ...

  10. 【NOIP2016提高A组五校联考4】label

    题目 题目 20%算法 设\(f_{i,j}\)表示第i个节点选了j这个权值的方案数. 显然转移方程为,\[f_{i,j}=\Pi_{v=son(i)}(\sum_{k=1}^{j-k}f_{v,k} ...

随机推荐

  1. Java面试多线程/JUC等知识

    2021年6月30日完成此部分内容整理

  2. 看完这篇,还不懂JAVA内存模型(JMM)算我输

    欢迎关注专栏[JAVA并发] 更多技术干活尽在个人公众号--JAVA旭阳 前言 开篇一个例子,我看看都有谁会?如果不会的,或者不知道原理的,还是老老实实看完这篇文章吧. @Slf4j(topic = ...

  3. 如何在SpringBoot中优雅地重试调用第三方API?

    前言 作为后端程序员,我们的日常工作就是调用一些第三方服务,将数据存入数据库,返回信息给前端.但你不能保证所有的事情一直都很顺利.像有些第三方API,偶尔会出现超时.此时,我们要重试几次,这取决于你的 ...

  4. 第二章 --------------------XAML基础

    1.XAML是什么? XAML是扩展标记语言,是为了方便设计人员设计UI界面.具体关于XAML语法的讲解参考其他相关书籍.  XAML每一个标签以<>开头,以</>结尾,作为标 ...

  5. 3、swagger-ui导出word接口文档

    参考 1.修改swagger2word项目的 application.yml 文件的 swagger.url 为Swagger Json资源的url地址(网址+端口): 例:swagger.url: ...

  6. anaconda peompt 、labalimg 数据标注

    安装anaconda,进行数据标注 1.安装前准备:下好安装包和所需文件 https://www.aliyundrive.com/s/XyH2JQ5TjCz 提取码: 3c2w 2.运行anacond ...

  7. APICloud AVM框架列表组件list-view的使用、flex布局教程

    avm.js 是APICloud 推出的多端开发框架.使用 avm.js 一个技术栈可同时开发 Android & iOS 原生 App.小程序和 iOS 轻 App,且多端渲染效果统一:全新 ...

  8. toastr.js 便捷弹框怎么用?怎么本地化?

    〇.简介 toastr.js 是一个非常简洁的弹窗消息插件,主要原因就是其脚本和样式文件较小. 并且可以根据自己的需求,修改样式文件,可以应用在多种不同的场景. https://codeseven.g ...

  9. jQuery烟花效果

    1.依赖源码 (function($){$.fn.fireworks=function(options){options=options||{};options.opacity=options.opa ...

  10. [C#]简单的理解委托和事件

    委托 在C++中可以利用"函数指针"将对方法的引用作为实参传递给另一个方法,而C#中可以利用委托提供相同的功能. 委托-内部机制 但是委托实际上是一个特殊的类.委托必须直接或间接的 ...