连续数字的最大乘积

实践练习C++17

简介

你在政府机构工作,截获了一组银行劫匪的加密通信,其中包含很长的数字序列。团队需要用数字信号处理技术分析,寻找可能暗示劫案计划的规律。

任务说明

分析加密信号中的长数字序列,寻找其中的模式。

本练习采用的方法称为连续序列最大乘积。

先明确几个术语:

  • 输入:待分析的数字序列。
  • 子序列:本题特指输入中位置相邻的一段数字。
  • 长度 span:每段包含几个数字。
  • 乘积:将这些数字相乘得到的值。

以输入 63915 为例:

  • 从原输入中选取相邻数字。
  • 长度为 3 时,有 639、391、915 三段。
  • 它们的乘积分别为 6×3×9=162、3×9×1=27、9×1×5=45。
  • 162 大于 27 和 45,因此最大乘积来自 639,答案为 162。