问题:给定一排n个硬币,其面值均为整数c1, c2, ..., cn, 这些整数并不一定两两不同。问如何选择硬币,使得在其原始位置互不相邻的条件下,所选硬币的总金额最大。
解决方案——递归法:
设对n个硬币,所选硬币最大总额为F(n)。对于F(n),它可由以下计算方法得到,当已知F(n-2),F(n-1),则F(n)可以由F(n-2)与第n个硬币组成,即第n个硬币与它左边不相邻的第一个硬币的最大总值组合的组合;也可由F(n-1)组成即第n个硬币的左边相邻的硬币的最大总值组合。取哪个组合方法视乎哪种方法得到的F(n)比较大。例如,