生活中很多问题的解决方法简单而粗暴,就是枚举出所有可能的情况,然后进行判断或者统计,从而解决问题,这就是枚举算法。枚举算法是我们在比赛中使用到的最多的一个算法,它的核心思想就是枚举所有的可能。
枚举算法的本质就是从所有候选答案中去查找正确的解,使用该算法需要满足一个条件:
优缺点:
已知 10 个苹果到地面的高度,以及一个小朋友把手伸直的时候能够达到的最大高度,请计算一下小朋友能够摘到的苹果的数目。
100 200 90 140 129 134 67 198 100 111
110
苹果高度 | 100 | 200 | 90 | 140 | 129 | 134 | 67 | 198 | 100 | 111 |
---|---|---|---|---|---|---|---|---|---|---|
下标编号 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
能否摘到 | √ | × | √ | × | × | × | √ | × |