傳送門首先我們知道\('a'\)在放了\(n\)個位置裡面是沒有約束的,\('b'\)在放了\(m\)個位置裡面也是沒有約束的,其他情況見下面情況討論。
\(dp[i][j]\)表示放了\(i\)個\('a'\)和\(j\)個\('b'\)的方案數,然後考慮轉移到下乙個狀態:
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;
typedef long long ll;
typedef pairpll;
typedef pairpli;
typedef pairpil;;
typedef pairpii;
typedef unsigned long long ull;
#define lson rt<<1
#define rson rt<<1|1
#define lowbit(x) x&(-x)
#define name2str(name) (#name)
#define bug printf("*********\n")
#define debug(x) cout<<#x"=["<#define fin freopen("d://code","r",stdin)
#define io ios::sync_with_stdio(false),cin.tie(0)
const double eps = 1e-8;
const int mod = 1e9 + 7;
const int maxn = 1e5 + 7;
const double pi = acos(-1);
const int inf = 0x3f3f3f3f;
const ll inf = 0x3f3f3f3f3f3f3f3fll;
int n, m;
ll dp[2007][2007];
int main()
}dp[0][0] = 1;
for(int i = 0; i <= n + m; ++i)
}printf("%lld\n", dp[n+m][n+m]);
}return 0;
}
2019牛客暑期多校第一場 E題ABBA
題目鏈結有 n m n m 個字母a和 n m n m 個字母b,組成乙個長度為 2 n m 2 n m 的字串,並且使得字串中有n n個 ab 和m m個 ba 求出可能的組合數 mod 1e9 7 例如,n 1 m 2時,可以有這樣的字串 並不是全部的字串 abbaba abbbaa bbaba...
2019牛客多校第一場
看到這裡我還能說什麼呢?自己慢慢證吧 就是這個 而 了 大佬們的結論是 三角形面積的22倍。我.手動膜拜。不會證.while true try x1,y1,x2,y2,x3,y3 map int,input split s abs x1 y2 x2 y1 x2 y3 x3 y2 x3 y1 x1 y...
2019 牛客多校 第一場
a 題意 就是兩個陣列,找最大的p,使對於1到p的所有子區間都保證最小值的下標相同 題解 每次往後加乙個值 第i 1位 都會多出 i 個區間,當a i 1 大於max a 1 a i 時沒有影響,當a i 小於max a 1 a i 時,因為a i 1 的加入會導致區間的rmq l到r 的 最小值的...