如果你计算 (0,0)−>(a,b′)(0,0)->(a,b')(0,0)−>(a,b′) 的代码如下:
C(a-1+b-i,a-1)-C(a-1+b-i,a)
这里理论上需要特判,因为不使用第二种操作的情况下,需要 a+b′a+b'a+b′ 步,这可能是 >n>n>n 的。
大部分题解都进行了特判,但少数题解没有。他们通过预处理 1∼n1\sim n1∼n 的阶乘,并且将数组开到 2n2n2n 有效规避了这一点。如果数组开小会 RERERE,如果连带将 n+1∼2nn+1\sim 2nn+1∼2n 的阶乘也一并预处理会 WAWAWA。
对着没有特判的题解调并且没有意识到这点,唐了好久好久。