给你两个正整数a和b,求出a除以b的商和余数。
Input
每行两个正整数a和b。(a<=10^1000,b<=10^8)
Output
每行输出两个整数,分别是商和余数。
Sample Input
Raw
123 5
1234567890 123
Sample Output
Raw
24 3
10037137 39
求解10的1000次方怎么办
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- shifenglv 2019-02-23 14:57关注
模拟一下小学除法的竖式,不过由于a的数位很长,用整型装不下,要用字符串来存储。
1.首先,判断a的长度,如果a的长度小10,即strlen(a)小于10(32位整型可以储存小于10^10的数),则直接将a和b转换成整数,然后相除的商和余数;
2.a的长度很长,则用模拟竖式除法。例如a=123456789101112,b=150。n=strlen(b)=3。显然123小于150,于是取1234与150除,商8余34。然后进行第二步除法,345除150.。。。。一步一步,直到除完a所有的数位。解决 3无用