递推的美妙之真分数序列

ε祈祈猫儿з 提交于 2020-03-20 18:35:41

递归的美妙之真分数序列

试着统计二位整数的最简真分数(分子小于分母,且分子分母无公因数)共有多少个并且求最简真分数的第2010项。

算法设计:

统计分母在区间[a,b]的最简真分数的个数,并且求出这些最简真分数升序序列中的第k项(正整数a,b,k),为了方便起见,设置数组c存储分子,数组d存储分母真分数,排序后的第k项为c[k]/d[k]

在指定的范围[a,b]穷举分数i/j的分母j:a,a+1,...b;

对 每一个分母j穷举分子i:1,2,....j-1.

若分子i和分母j存在大于1的公因数,说明i/j非最简可忽略不计(因约简后分母小于j前已经产生并且赋值或者约简后分母小于a)

若分子i和分母j不存在大于1的公因数,则赋值得到一个最简真分数c[n]/d[n],数组下标n统计最简真分数的个数。

用冒泡排序的算法打印第k项c[k]/d[k].

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!