当前位置:编程学习 > C/C++ >>

hdu 1576(数论之扩展欧几里得)

分析:由 n = A % 9973,得 A = 9973 * x + n;

又 A % B == 0,则(9973 * x + n)% B == ans,所以 x = (ans * B -n)/9973;

其中X为整数。。

 

 

[cpp]
#include"stdio.h"  
#include"string.h"  
int main() 

    int T; 
    int i; 
    __int64 n,b; 
    scanf("%d",&T); 
    while(T--) 
    { 
        scanf("%I64d%I64d",&n,&b); 
        for(i=0;i<9973;i++) 
        { 
            if((b*i-n)%9973==0)break; 
        } 
        printf("%d\n",i); 
    } 
    return 0; 

#include"stdio.h"
#include"string.h"
int main()
{
 int T;
 int i;
 __int64 n,b;
 scanf("%d",&T);
 while(T--)
 {
  scanf("%I64d%I64d",&n,&b);
  for(i=0;i<9973;i++)
  {
   if((b*i-n)%9973==0)break;
  }
  printf("%d\n",i);
 }
 return 0;
}

 

补充:软件开发 , C++ ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,