微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

hdu1212大数取模

借鉴别人的思路;
用递推的思想,就可以总结出下面的公式;
举例:
12345 9
余数等于(12340%9+5%9)%9;
而12340 9
(12300%9+40%9)%9;
依次...
最后(10000%9+2000%9)%9;
而10000%9=(1%9*10000)%9
2000%9=(2%9*1000)%9
即(1*10+2)%9*1000%9;
即可得到:
for(i=0;i<len;i++)
   {
       sum=sum*10+s[i]-'0';
        sum=sum%9;
    }
 

#include<stdio.h> #include<string.h> int main() {  int n,sum,i,k;  char s[1001];  while(scanf("%s%d",s,&n)!=EOF)  {   k=strlen(s);   sum=0;   for(i=0;i<k;i++)   {    sum=sum*10+s[i]-'0';    sum=sum%n;   }   printf("%d\n",sum);  }  return 0; }

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐