【NOIP 模拟题】[T1]数列(找规律+欧几里得算法)
来源:互联网 发布:js什么是实例化对象 编辑:程序博客网 时间:2024/06/06 14:01
【题解】【找规律+辗转相除】
【通过按照题目给出的产生数的方法可以发现:这是大名鼎鼎的更相减损之术!】
【更相减损之术是古人用来求最大公约数的方法,其实质与我们平时常用的辗转相除其实是一样的。那么,我们用辗转相除代替更相减损即可。】
【这样,我们每进行一次,就会产生一个新的数,边辗转相除边计数即可】
#include<cstdio>#include<cstring>#include<algorithm>#define ll long longusing namespace std;ll a,b,cnt;inline void solve(ll a,ll b){while(1) { if(a<b) swap(a,b); if(!(a%b)) {cnt+=a/b; return;} cnt+=a/b; a=a%b; }}int main(){freopen("seq.in","r",stdin);freopen("seq.out","w",stdout);scanf("%I64d%I64d",&a,&b);if(a<b) swap(a,b);if(!b) {printf("2\n"); return 0;}solve(a,b);printf("%I64d\n",cnt+1);return 0;}
0 0
- 【NOIP 模拟题】[T1]数列(找规律+欧几里得算法)
- NOIP模拟(11.07)T1 数列求和
- 【NOIP 模拟题】[T1]return(模拟)
- 【NOIP 模拟题】[T1] 等差数列(dp)
- 【NOIP 模拟题】[T1]连锁店(贪心)
- NOIP模拟题 [暴力][贪心][栈][dfs][找规律]
- 【noip模拟题】数列
- 【NOIP 模拟题】[T1](递推+乱搞)
- 【NOIP 模拟题】[T1]质数生成器(线性筛+乱搞)
- NOIP模拟(10.19)T1 打牌
- NOIP模拟(10.20)T1 刮刮卡
- NOIP模拟(20171023)T1 fibonacci
- NOIP模拟(10.22)T1 姓名匹配
- NOIP模拟(10.23)T1 Fibonacci
- NOIP模拟(10.24)T1 建设图
- NOIP模拟(20171024)T1 Graph
- NOIP模拟(20171026)T1 抄代码
- NOIP模拟(10.26)T1 抄代码
- java集合框架图示
- 文章标题
- URAL 1876 Centipede's Morning[数论]
- fgets与gets的区别
- hibernate里实体类用int和Integer区别
- 【NOIP 模拟题】[T1]数列(找规律+欧几里得算法)
- VMnet1和VMnet8的区别
- 2016/11/14学习工作日志
- 2.7map容器类型
- Oracle数据库中触发器包含dblink
- 径向模糊实例
- 代码大全2 --- 33章 个人性格
- 解析php入库
- 图论(6)--邻接表的建立与入度出度