📅  最后修改于: 2023-12-03 15:27:58.201000             🧑  作者: Mango
在解决计算问题时,我们有时候需要统计一组数字中有多少个满足特定条件的数字。本文介绍如何计算N个数字中,有多少个数字的后缀可被K整除。
给定一个正整数K和N个正整数$a_1, a_2, ..., a_n$,求有多少个数字的后缀可被K整除。
例如,$K=10,a_1=20, a_2=25, a_3=30, a_4=35$,其中有两个数字20和30的后缀可被10整除。
对于一个数字$x$,可以将其写成$x=A \times 10^k+B$的形式。其中,$A$表示$x$除以$10^k$后的整数部分,$B$表示$x$除以$10^k$后的余数部分。因此,如果$x$的后缀能被$K$整除,则$B$一定能被$K$整除。而$B$的值不超过$K$,因此,只需将$a_i$对$K$取余,判断余数是否为0即可。
代码如下:
count = 0
for i in range(n):
if a[i] % k == 0:
count += 1
其中,n
表示数字的个数,a
是一个长度为n
的列表,表示输入的数字序列。
本文介绍了如何计算N个数字中有多少个数字的后缀可被K整除。通过对每个数字对K取余,判断余数是否为0,可以得到答案。这个问题比较简单,是解决类似统计数字问题的基本方法,在其他问题中也会用到。