首页 > 其他 > 详细

求解线段上有多少个整数解

时间:2015-08-03 22:48:31      阅读:491      评论:0      收藏:0      [点我收藏+]

在一个直角坐标系上,从(0,0)到(N,M)画一条线段,求线段覆盖的整数点个数

在一个直角坐标系上,从(0,0)到(N,M)画一条线段,比如N=6,M=4:如图:技术分享图中的线段就覆盖了3个整点,分别是(0,0)(3,2)(6,4)。类似地,如果N=M=3时线段就覆盖了4个整点(0,0)(1,1)(2,2)(3,3)现在给出N和M,求线段(0,0)—(N,M)覆盖的整点个数。

输入文件:第一行一个整数N,第二行一个整数M。输出文件:一行一个数,为覆盖的整点个数。

样例输入:812

样例输出 5

GCD(n,m)为n与m的最大公约数,通过辗转相除法求得。

令g=GCD(n,m);n=x*g,m=y*g.所以将横坐标分为g个x份,将纵坐标分为g个y份,如此得到的答案有g个整数解期其中是不包括原点的,如果包括原点则需要g+1,如果需要去掉两端的整数解则g-1便是答案

版权声明:本文为博主原创文章,未经博主允许不得转载。

求解线段上有多少个整数解

原文:http://blog.csdn.net/qq_18661257/article/details/47262227

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!