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

在一个直角坐标系上,从(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便是答案

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

时间: 2024-10-10 21:18:53

求解线段上有多少个整数解的相关文章

编程题-线段上格点的个数-最大公约数

线段上格点的个数 给定平面上的两个格点P1(x1,y1)和P2(x2,y2),线段上P1P2上,除P1和P2以外一共有多少格点 虽然可以用穷举法,遍历min(x1,x2)≤x≤max(x1,x2)且min(y1,y2)≤y≤max(y1,y2)的格点可以得到正确答案,但是复杂度确实O(|x1?x2|×|y1?y2|),其实这个题的答案是|x1?x2|和|y1?y2|的最大公约数减去1.(注意,|x1?x2|=0且|y1?y2|=0时,答案为0) 原因,首先看一下|x1?x2|和|y1?y2|的最

URAL 1966 Cycling Roads 点在线段上、线段是否相交、并查集

F - Cycling Roads Description When Vova was in Shenzhen, he rented a bike and spent most of the time cycling around the city. Vova was approaching one of the city parks when he noticed the park plan hanging opposite the central entrance. The plan had

几何画板制作点在线段上的动画方法

几何画板可以使一个点沿某条轨迹运动,使静态变动态,绘制出美观.生动的动态图形,实现动画效果.下面我们通过举例点在线段上的动画作讲解来学习几何画板点动画的制作方法. 具体的操作步骤如下: 打开几何画板,在工作区域画线段AB,在线段AB上任意画一点C. 选中点C,单击“编辑”——“操作类按钮”——“动画”,弹出对话框,单击确定后在工作区中出现了一个“动画点”按钮,可通过该按钮来控制点C在线段AB上的运动.如下图所示,右键单击“动画点”按钮,选择“属性”,可以重新设置点C的运动方向.速度及按钮标签.

圆在线段上滚动如何用几何画板实现

如果实现让一个圆在一条直线上滚动,就像车轮在地上滚动的那种效果呢?这时我们可以利用几何画板来实现这一效果,下面将介绍几何画板动态演示圆在线段上滚动的课件制作方法. 几何画板演示圆在线段上滚动的课件模板样图: 该课件的具体制作步骤如下: 1.绘制一条水平线段AB,再绘制一条水平线段CD. 2.在线段AB上绘制一点 P,选定点 P和线段CD,单击“构造”—“以圆心和半径绘圆”:选定点 P和线段AB,单击“构造”—“垂线”,作出垂线与圆的交点O.隐藏圆和垂线. 3.选定点A和点P,单击“度量”—“距离

POJ1696 Space Ant(贪心、向量叉乘、向量极角、线段相交、点在线段上)

题目链接: http://poj.org/problem?id=1696 题目描述: Space Ant Description The most exciting space discovery occurred at the end of the 20th century. In 1999, scientists traced down an ant-like creature in the planet Y1999 and called it M11. It has only one ey

F. Monkeying Around 维护点在多少个线段上

http://codeforces.com/gym/101350/problem/F 题意:有m个笑话,每个笑话的区间是[L, R],笑话种类有1e5,一开始所有猴子都在凳子上,听到一个笑话,就倒下,但是如果是听过的笑话,就重新回到凳子上.问最终有多少个猴子在凳子上. 相当于有1e5个线段,如果我们能知道第i个猴子,被多少个线段覆盖了,那么可以找出那些线段中的最后那一条,就是最后覆盖上去的那一条,那条线段是哪一个笑话,设为k,如果这个笑话覆盖这个猴子的次数 > 1,那么这个猴子将会回到凳子上.也

判断点在线段上

2016-11-0921:00:46 判断点p0是否在线段p1p2上1.先判断p0,p1,p2三点共线2.在判断点p0在以p1p2为对角线的矩形内. #include <iostream> #include <algorithm> using namespace std; const double inf = 1e-10; struct point { double x, y; }; struct v { point start, end; }; bool onSegment(po

市场上有多少种分辨率?

作者马燕:本内容为原创,禁止转载. 一.市场上究竟有几种显示器? 据统计: 笔记本电脑共分为以下几种:屏幕规格 分辨率 显示比例 11.6英寸 1366*768 宽屏16:912.2英寸 1920*1200 宽屏16:1012.5英寸 1366*768 宽屏16:9/12.5英寸 1920*1080 宽屏16:913.3英寸 1920*1080 宽屏16:9/13.3英寸 3200*1800 宽屏16:914英寸 1366*768 宽屏16:9/14英寸 1920*1080 宽屏16:915.6

leetcode——172 Factorial Trailing Zeroes(N!尾巴上有多少个0,算法复杂度为lg)

Given an integer n, return the number of trailing zeroes in n!. Note: Your solution should be in logarithmic time complexity.(您的解决方案应该在对数时间复杂度.) Hide Tags: Math 题目要求:给定N,求N!的末尾有多少0.要求算法复杂度为lg 解题思路: 思路一: 想的比较简单,先实用for循环进行阶乘运算,然后mod10计算0的个数,但是在OJ检查时,超时