摘要:
f[i][j]表示向上扩展了i行,向右扩展了j列的方案数显然f[i][j]=f[i-1][j]*j+f[i][j-1]*i;但是这样会有重复的怎么去重是关键,top行和right列对称操作会重复算,所以最后为f[i][j]=f[i-1][j]*j+f[i][j-1]*i-(i-1)*(j-1)*f[ 阅读全文
posted @ 2020-07-22 10:39
WeiAR
阅读(252)
评论(0)
推荐(0)
摘要:
每个位置的数变化最多为[0,1,2],就像1,1,2这种情况,中间位置最多加2,我们从后往前处理 #include <bits/stdc++.h> #define inf 2333333333333333 #define N 1000010 #define p(a) putchar(a) #defi 阅读全文
posted @ 2020-07-22 10:34
WeiAR
阅读(156)
评论(0)
推荐(0)
摘要:
第一个数的范围是[1,2*a],不然不如把它变成1,同理第二位为[1,3*b],第3位可以直接算出来 #include <bits/stdc++.h> #define inf 2333333333333333 #define N 1000010 #define p(a) putchar(a) #de 阅读全文
posted @ 2020-07-22 10:32
WeiAR
阅读(99)
评论(0)
推荐(0)