您的位置:首页 > 其它

NYOJ 881 小m的区间公约数

2015-07-03 19:15 204 查看
#include<stdio.h>
int t,num,l,r,a,b,i,max,flag;
int temp;
int gcd(int n,int m)
{
  if(n<m)
  {
    t=n;
    n=m;
    m=t;
  }
  while(n!=0)
  {
    r=m%n;
    m=n;
    n=r;
  }
  return (m);
}
int main()
{
  while(~scanf("%d%d",&a,&b))
  {
    temp=gcd(a,b);
    scanf("%d",&num);
    while(num--)
    {
      max=-1;
      scanf("%d%d",&l,&r);
      for(i=r<temp?r:temp;i>=l;i--)
      if(temp%i==0)
      {
        max=i;
        flag=1;
        break;
      }
      if(flag)
        printf("%d\n",max);
      else
        printf("-1\n");
    }
  }
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: