题目描述
制造巨型人造天体需要A部件和B部件,其质量分别为2012345678克、1912345678克。
(1)试计算这两种部件的质量之和的最后四位数。
(2)试计算12345678个A部件的总质量的最后四位数。
Input:
无输入数据。
Outout:
输出两行,第一行为两种部件的质量之和的后四位数,第二行为12345678个A部件总质量的后四位数。
Example
Input
无
Output
略
解题思路
本体为简单的两个整数相加的问题,但是要注意这两个整数的数据范围;
本体可以简单明了地做出来,如下:
#include <bits/stdc++.h>
using namespace std;
int main()
{
unsigned long long a = 2012345678, b = 1912345678, he, ji;
he = a + b;
ji = a * 12345678;
cout << he % 10000 << " " << ji % 10000;
return 0;
}
但是为了不使电脑的压力太大,我们可以使用余数的可加性与余数的可乘性,这两个性质,其代码如下:
#include <bits/stdc++.h>
using namespace std;
int main()
{
int m = 10000, a = 2012345678, b = 1912345678;
cout << (a % m + b % m) % m << endl << ((a % m) * (12345678 % m)) % m;
return 0;
}