--永远不要在OJ上使用值元编程,过于简单的没有优势,能有优势的编译错误. 背景 2019年10月,我在学习算法.有一道作业题,输入规模很小,可以用打表法解决.具体方案有以下三种: 运行时预处理,生成所需的表格,根据输入直接找到对应项,稍加处理后输出: 一个程序生成表格,作为提交程序的一部分,后续与方法1相同,这样就省去了运行时计算的步骤: 以上两种方法结合,编译期计算表格,运行时直接查询,即元编程(metaprogramming). 做题当然是用方法1或2,但是元编程已经埋下了种子.时隔大半年…