CF450B Jzzhu and Sequences 题解

技术CF450B Jzzhu and Sequences 题解 CF450B Jzzhu and Sequences 题解CF450B Jzzhu and Sequences 题解Content
有一个

CF450B Jzzhu与数列问题的解释

CF450B Jzzhu与数列问题的解释

Content

有一个长度为\(n\)的序列\(\{a_1,a_2,\dots,a_n\}\),它满足以下递归公式:

\(a_1=x\)当\(i=1\)时。

\(a_2=y\)当\(i=2\)时。

\(I \ geq plant 3 \),\(a_i=a_{i-1} a_{i 1}\)。

求\ (a _ n \ bmod10 9 7 \)的值。

数据范围:\(1\leqslant n\leqslant 2\times 10^9\),\(|x|,|y|\leqslant 10^9\)。

Solution

对于\(I \ geq plant 3 \),我们不妨将这个表达式进行移位,得到\(a_{i 1}=a_i-a_{i-1}\)。然后先写下下面的公式:

\[\ begin { aligned } a _ 3=a _ 2-a _ 1=y-x \ \ a _ 4=a _ 3-a _ 2=(y-x)-y=-x \ \ a _ 5=a _ 4-a _ 3=-x-(y-x)=-y \ \ a _ 6=a _ 5-a _ 4=-y-(-x)=x-y \ \ a _ 7=a _ 6-a _ 5=x-y-(-y)=x \ color { Red }=a _ 1 \ \ a _ 8

\]我们发现当\(i=7\)时,\(a_7\)的值变回\(a_1\)。因此,我们发现了一个长度为(6)的循环节点。那么\(a_i\)就不难表达了:

\[a _ I=\ begin { cases } Xi \ b mod 6=1 \ \ yi \ b mod 6=2 \ \ y-Xi \ b mod 6=3 \ \-Xi \ b mod 6=4 \ \-yi \ b mod 6=5 \ \ x-yi \ b mod 6=0 \ end { cases }

\]直接按照这个公式计算\(a_n\)就行了,也就是\(a_{n\bmod 6}\)。负数取模前注意加模。

Code

const int mod=1e 9 7;

int f[7];

int main(){ 0

int x=Rint,y=Rint,n=Rint

f[1]=x,f[2]=y,f[3]=y - x,f[4]=-x,f[5]=-y,f[6]=x-y;

返回写((f[(n - 1) % 6 1] % mod mod) % mod),0;

}

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/147910.html

(0)

相关推荐

  • 香港多IP服务器、香港站群服务器为什么有利于SEO

    技术香港多IP服务器、香港站群服务器为什么有利于SEO网站所有者花费大量时间和金钱在搜索引擎的第一页上展示他们极具竞争力的网站。优化页面以使搜索引擎更容易阅读网站、制作SEO兼容的内容、从其他优质网站获取反向链接、发布促

    礼包 2021年11月1日
  • JavaScript中var与let的区别是什么

    技术JavaScript中var与let的区别是什么本篇文章给大家分享的是有关JavaScript中var与let的区别是什么,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小

    攻略 2021年12月8日
  • MySQL中grant和revoke怎么用

    技术MySQL中grant和revoke怎么用这篇文章主要为大家展示了“MySQL中grant和revoke怎么用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“MySQL中g

    攻略 2021年10月29日
  • Linux操作系统启动时怎样自动启用oracle standby备库日志应用

    技术Linux操作系统启动时怎样自动启用oracle standby备库日志应用这期内容当中小编将会给大家带来有关Linux操作系统启动时怎样自动启用oracle standby备库日志应用,文章内容丰富且以专业的角度为

    攻略 2021年11月30日
  • 怎么理解UML

    技术怎么理解UML今天就跟大家聊聊有关怎么理解UML,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。什么是UML?Unified Modeling Language

    攻略 2021年11月23日
  • C++构造函数怎么用

    技术C++构造函数怎么用这篇文章给大家分享的是有关C++构造函数怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1.作用一种特殊类型的方法,在每次实例化对象时运行2.代码举例2.1 示例1

    攻略 2021年11月21日