nefu998整除问题(高精度除法)

不要思维定式==模拟手算除法即可

description

小明有一个比较大的数字x(1<=x<=10^1000),小红也
有一个数字y(1<=y<2^64),有一天数学老师想要给同学们分组,如果两个人一个数是另外一个数的倍数那么这两个人在一组,请问小明和小红在一组吗?

 
input
先输入小明的数x,再输入小红的数y;
 
output
如果两个人在一组的话输出yes,否则输出no;
 
sample_input
12  4

7  3


#include <iostream>
#include<cstring>
#include<cstdio>
using namespace std;
char ming[1200];
int hong,mod;
int main()
{
    while(~scanf("%s%d",ming,&hong))
    {
         int len=strlen(ming);
         mod=0;
         int ans=0;
         for(int i=0;i<len;i++)
         {
              mod=ming[i]-'0';
              ans=(ans+mod)%hong;
              ans*=10;
         }
         if(!ans) printf("yes\n");
         else printf("no\n");
    }
    return 0;
}

你可能感兴趣的:(nefu998整除问题(高精度除法))