变化问题
变化问题:取每个数字最多出现一次的所有自然数,并按升序排序。
给定这个顺序,写两个函数: ( 1 )顺序—>编号:在索引i找到一个编号N,( 2 )编号—>顺序:找到编号N的索引i
注: ( a )零是一个自然数,( b )认为指数是从零开始的
一个可行的解决方案是产生所有的变化并将其分类吗?答案是肯定的,有8877691种变体,机器是386种,内存1MB。这显然是一个组合问题,需要一点思考和大量计算。
除了一个固定的列表,我们将试图避免大多数内置函数,这个列表即使在Pascal中也是很容易实现的。
实现代码
测试一:
测试二: