在Python中查找作为字符串给定的数字的所有子字符串的总和的程序
假设我们有一个以字符串格式给出的数字,我们必须查找s的所有子字符串的总和。结果可能非常大,因此以10^9+7为模返回结果。
因此,如果输入为s =“268”,则输出将为378,因为子字符串为“2”,“6”,“8”,“26”,“68”和“268”,总和为378。
要解决此问题,我们将遵循以下步骤−
- M := 10^9 + 7
- sum_val:= 0
- B := 1
- res:= 0
- 对于i在范围为s的大小减1到0的范围内,逐渐减少1,执行以下操作
- res:=(res + s [i]的数字值* B*(i + 1))mod M
- sum_val:= sum_val-s [i]的数字值
- B:=(B * 10 + 1)mod M
- 返回res
示例
让我们看以下实现以更好地理解−