题意:
求P(n,m)的最后一位非零数。
思路:
讨论1-----n中2,5,3,7,9因子的个数,具体移步
http://duanple.blog.163.com/blog/static/7097176720081016113033592/
按照我的理解,求n!最后非零为,先把1----n中‘2’和‘5’的因子的数量求出来,因为只有2和5可以构成0,接下来就要分别求出1---n中最后一位为3,7,9的数字的数量,然后相乘就可以得到n!的最后一位的数
#include<iostream> #include<cstring> #include<cstdio> using namespace std; typedef long long ll; ll n, m; ll get25(ll n ,ll x){ ll res = 0; while(n){ res+=n/x; n/=x; } return res; } ll getodd(int n ,int x){ if(n == 0)return 0; return n/10 + (n%10 >= x) + getodd(n/5 ,x); } ll gao(int n ,int x){ if(n == 0)return 0; return gao(n/2,x)+getodd(n ,x); } int table[4][4] ={ 6,2,4,8,//last digit of 2^4 2 2^2 2^3 1,3,9,7,//...3 1,7,9,3,//...7 1,9,1,9,//...9 }; int main(){ while(cin>>n>>m){ m = n - m; ll two = get25(n ,2) - get25(m ,2); ll five = get25(n ,5) - get25(m ,5); ll three = gao(n ,3) - gao(m ,3); ll seven = gao(n ,7) - gao(m ,7); ll nig = gao(n ,9) - gao(m ,9); // cout<<two<<" "<<five; if(two<five){ puts("5"); continue; } ll res = 1; if(two != five)res *= table[0][(two - five)%4]; res *= table[1][(three)%4]; res *= table[2][(seven)%4]; res *= table[3][(nig)%4]; res %= 10; printf("%I64d\n",res); } return 0; }
相关推荐
# 给你一个正整数列表 L, 判断列表内所有数字乘积的最后一个非零数字的奇偶性。如果为奇数输出1,偶数则输出0。 # 输入示例 # 输入:L=[2,8,3,50] # 输出示例 # 输出:0 # 解析 # 在上题的基础上的改造题, 这里直接...
求fac的最后一位非零数字
零数计算器计算整管数和零管数
包括交换两行、将某一行乘以一个非零数、将某一行加上另一行的倍数。这些操作在C++中可以通过二维数组的索引来实现。例如,交换行可以使用临时变量进行交换,乘以非零数则直接对对应元素进行乘法,加法操作同样如此...
显示非0数组例题个案O(∩_∩)O哈哈~
小学三年级上册数学课程中的一个重要知识点是多位数乘一位数的计算。这涉及到基础的乘法运算,对于学生建立数学思维和熟练掌握计算技巧至关重要。以下是这个知识点的详细讲解: 1. **因数与积的关系**:在乘法中,...
这篇资料是针对苏教版小学数学三年级上册的《两、三位数除以一位数》这一主题的同步练习,旨在帮助学生巩固和深化对除法的理解。以下是该练习中的主要知识点: 1. 三位数除以一位数的性质:题目指出,三位数除以一...
CAD里面线的零数调整为整数
在小学三年级数学下册的学习中,一个重要的章节是“除数是一位数的除法”。这个章节涉及了多种关键概念和技巧,旨在帮助学生熟练掌握除法运算,为后续的数学学习打下坚实基础。 首先,我们要理解除法的本质是平均分...
《采访果蔬会——两、三位数除以一位数3》是青岛版小学三年级数学下册的一个教学内容,主要目标在于让学生理解和掌握两、三位数除以一位数的计算方法,特别是涉及商中间有0的除法。教学目标分为以下几个方面: 1. *...
这篇资料主要讲解的是中小学教育中的一位数除三位数的数学知识,包括口算除法、估算除法、笔算除法以及除法的验算。以下是对这些知识点的详细阐述: 1. **口算除法**:对于整十、整百的数除以一位数,可以通过将被...
这篇文档主要针对小学三年级学生,涉及的数学知识点集中在两三位数乘以一位数的运算上,包括笔算方法、特殊数值的乘法规则、估算、倍数关系以及实际问题的解决。以下是这些知识点的详细解释: 1. **笔算两三位数乘...
特别地,0除以任何非零数都等于0。例如,27 ÷ 9,从2开始除,不够除,看7,7 ÷ 9 = 0余7,商0写在十位,余数7为个位的被除数。 4. 除数是两位数的除法法则: 类似于一位数的除法,从被除数的高位开始,用除数的...
### 小学三年级数学知识点详解:除数是一位数的除法 #### 一、口算除法 在小学三年级的数学学习中,除法是一项重要的技能。为了更好地掌握这一技能,我们将详细介绍两种基本的口算除法方法: 1. **整千、整百、整...
在小学数学中,两位数除以一位数是基础的除法运算,对于培养学生的计算能力和理解除法原理至关重要。这个练习题库包含了15天的练习题目,每天都有10道题,旨在帮助学生熟练掌握这类计算。这些题目都是简单的整数除法...
这篇文档主要针对三年级学生在学习两三位数除以一位数的数学练习,涵盖了口算、填空、竖式计算和实际应用问题等多个方面。以下是详细的知识点解析: 1. 口算策略:对于64÷2这样的除法,可以通过拆分来计算,如先算...
这篇文档是针对小学三年级学生设计的一份数学练习,主要涵盖了两三位数乘以一位数的计算及相关知识点。以下是这些知识点的详细解释: 1. **笔算规则**:在进行两三位数乘以一位数的计算时,需要按照从个位到高位的...
这是因为任何非零数的0次幂都是1,所以当指数为0时,结果为\( c \)(初始化为1)。 3. **偶数情况处理:** - 如果\( b \mod 2 \neq 0 \)(即\( b \)为奇数),则转到第(5)步。这是因为我们需要先处理偶数指数的...
- 当除数保持不变时,如果被除数乘以一个非零数n,那么商也会乘以n。例如,如果16160320÷8=2020040,那么当被除数变为16160320×2×2=64641280时,商将是2020040×2×2=8080160。 - 相反,如果被除数除以一个非...
这篇文档是关于青岛版小学三年级数学下册的教学教案,主要涉及了两、三位数除以一位数的计算方法,以及解决实际问题的能力培养。在第二课时,教学内容聚焦于巩固三位数除以一位数得到两位数的计算技巧,强调估算方法...