思路是:构造 [1,1−k][1,1-k][1,1−k],用二进制拆分优化背包那个类似的东西,拆成 1,2,4,...,k−2i1,2,4,...,k-2^i1,2,4,...,k−2i。
然后往里面加 k+1,2k+1,...k+1,2k+1,...k+1,2k+1,... 即可。
特判一下 k=1k=1k=1,就是 3,2,4,...,n−2i,n−2i+13,2,4,...,n-2^i,n-2^i+13,2,4,...,n−2i,n−2i+1。
感觉很对,求 hack。