HDU 1212求余
来源:互联网 发布:免费手机相册制作软件 编辑:程序博客网 时间:2024/04/28 09:26
大数的题目其实都差不多一种模式,那就是运用数组一个一个的算,先说说此题
题目大意:超过1000位的大数a对小数b求余;
题目解析:先用数组存储大数,再依次a[i]对b求余,余数赋加给a[i+1];一直到和b差不多的长度为止;
最后在把a对b求余的余数赋给d,此时d是一个较小的数;可以直接对b求余了;
错误分析:把b[]数组赋给b1时应为b[i]-'0';
#include<cstdio>#include<cstring>using namespace std;char a[1005],b[10];int Mod(char a[],char b[]){ int a1[1005],len1,len2=0; long long b1=0,d=0; len1=strlen(a); len2=strlen(b); for(int i=0;i<len2;i++) b1=(b[i]-'0')+b1*10;//把b数组赋给b1 for(int i=0;i<len1;i++) a1[i]=a[i]-'0';//把字符a[]赋给整型a1[]; for(int i=0;i<len1-len2;i++) { a1[i+1]+=a1[i]%b1*10;//再依次a[i]对b求余,余数赋加给a[i+1];一直到和b差不多的长度为止; } for(int i=len1-len2;i<len1;i++) d=a1[i]+d*10;//最后在把a对b求余的余数赋给d,此时d是一个较小的数;可以直接对b求余了; return (d%b1);}int main(){ while(scanf("%s %s",a,b)!=EOF) { getchar();//接受换行符 printf("%d\n",Mod(a,b)); } return 0;}
- HDU 1212求余
- HDU 1212(大数求余)
- HDU 1226(bfs,大数求余)
- 求余
- 求余
- 求余
- 求余
- 求余
- HDU 1061 Rightmost Digit (四则运算求余,快速幂)
- 寒假之作—HDU—求余运算
- Hud 1212 BigNumber[大数求余]
- 杭电1212题 大数求余
- 求模 求余
- 求余逆运算+负数求余
- 大数求余(String求余)
- HDU 1212(大数——取余)
- HDU 1212 Big Number(同余定理)
- hdu 1212 Big Number(大数取余)
- 测试函数JavaScript单元测试工具使用—QUnit
- android多级图片缓存
- POJ 1149 PIGS (最大流)
- wordpress后台修改“WordPress 地址(URL)”后无法打开的解决方法
- Lovekey+26进制大数相加
- HDU 1212求余
- hdu 1116 Play on Words
- .NET中通过域验证用户名和密码
- HTML学习笔记(五) HTML 标题
- system string to std string
- sql-(test)
- 我的第一篇
- HDU 动态规划(46道题目)倾情奉献~ 【只提供思路与状态转移方程】
- 字体和文字