博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
YYHS-数列
阅读量:5809 次
发布时间:2019-06-18

本文共 578 字,大约阅读时间需要 1 分钟。

题目描述

已知a[1],a[2]
a[i]=abs(a[i-1]-a[i-2])  (i>=3)
问数列中出现了多少种不同的数。

样例输入

3 5

样例输出

5

提示

 

 

题解

这道题给你a[1],a[2],要你求数列中有多少种不同的数
通过几个数据的手算不难发现a[1]和a[2]互换 答案是一样的
具体答案就是一个辗转相除法,我们可以用dfs来做
每次ans+=x/y;(x>y)
 
然后判断x%y==0(当a[i]==0的时候数列中的数才不会重复)else dfs(y,x%y);
最后输出ans+1即可(为什么要加一因为刚开始的时候你没有加上a[1])
1 #include
2 #define ll long long 3 using namespace std; 4 ll n,m,ans; 5 void dfs(ll a,ll b){ 6 ans+=a/b; 7 if (!(a%b)) return; else dfs(b,a%b); 8 } 9 int main(){10 scanf("%lld%lld",&n,&m);11 if (n
View Code

 

转载于:https://www.cnblogs.com/zhuchenrui/p/7552708.html

你可能感兴趣的文章
linux命令:ls
查看>>
Using RequireJS in AngularJS Applications
查看>>
hdu 2444(二分图最大匹配)
查看>>
shell编程笔记六:实现ll命令
查看>>
【SAP HANA】关于SAP HANA中带层次结构的计算视图Cacultation View创建、激活状况下在系统中生成对象的研究...
查看>>
[nodejs] nodejs开发个人博客(五)分配数据
查看>>
《Linux内核修炼之道》 之 高效学习Linux内核
查看>>
Java数据持久层框架 MyBatis之API学习九(SQL语句构建器详解)
查看>>
30分钟Git命令“从入门到放弃”
查看>>
nginx : TCP代理和负载均衡的stream模块
查看>>
MYSQL数据库间同步数据
查看>>
DevOps 前世今生 | mPaaS 线上直播 CodeHub #1 回顾
查看>>
iOS 解决UITabelView刷新闪动
查看>>
让前端小姐姐愉快地开发表单
查看>>
Dubbo笔记(四)
查看>>
Web前端JQuery入门实战案例
查看>>
java B2B2C Springboot电子商城系统- SSO单点登录之OAuth2.0 登出流程(3)
查看>>
12月26日云栖精选夜读:CDN新品发布:阿里云SCDN安全加速开放公测
查看>>
USB 通信原理
查看>>
7zZip zip RAR iOS
查看>>