1017 A除以B (20分)
本题要求计算 A/B,其中 A 是不超过 1000 位的正整数,B 是 1 位正整数。你需要输出商数 Q 和余数 R,使得 A=B×Q+R 成立。
输入格式:
输入在一行中依次给出 A 和 B,中间以 1 空格分隔。
输出格式:
在一行中依次输出 Q 和 R,中间以 1 空格分隔。
输入样例:
123456789050987654321 7
输出样例:
17636684150141093474 3
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.math.BigInteger;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
String s[] = bf.readLine().split(" ");
bf.close();
BigInteger a = new BigInteger(s[0]);
BigInteger b = new BigInteger(s[1]);
BigInteger sum1 = a.divide(b);
BigInteger sum2 = a.mod(b);
System.out.print(sum1+" "+sum2);
}
}
本文介绍了一种解决大数除法问题的算法实现,具体为计算不超过1000位的正整数A除以一位正整数B的商Q和余数R,确保A=B×Q+R。通过使用Java的BigInteger类,可以有效处理大数运算,示例代码展示了如何读取输入、进行计算并输出结果。
398

被折叠的 条评论
为什么被折叠?



