C++中求A的阶乘除以B的阶乘的最后一位数
如果我们有两个整数A和B,且B>=A,则必须计算B的最后一位!/一种!当A=2且B=4时,结果为2、2!=2和4!=24,所以24/2=12。最后一位是2。
我们知道阶乘的最后一位将位于集合{0,1,2,4,4,6}中,然后按照以下步骤解决此问题:
我们会发现A和B之间的区别
如果diff>=5,则答案为0
否则,从(A+1)迭代到B。然后相乘并存储。
乘法的最后一位将是答案。
示例
#include<iostream>
using namespace std;
int findLastDigit(long long int A, long long int B) {
int x = 1;
if (A == B)
return 1;
else if ((B - A) >= 5)
return 0;
else {
for (long long int i = A + 1; i <= B; i++)
x = (x * (i % 10)) % 10;
return x % 10;
}
}
int main() {
cout << "Last digit is: " << findLastDigit(2, 4);
}输出结果
Last digit is: 2
热门推荐
10 香港老妈结婚祝福语简短
11 毕业立体贺卡祝福语简短
12 简短新年年会祝福语
13 评论小品祝福语大全简短
14 恭喜师兄结婚祝福语简短
15 员工集体辞职祝福语简短
16 高中新生祝福语 简短
17 装修祝福语男生搞笑简短
18 生日开业蛋糕祝福语简短