Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <fstream>
- #include <algorithm>
- #include <cmath>
- #include <bitset>
- #include <queue>
- #include <iomanip>
- #include <vector>
- #include <sstream>
- #include <cstdio>
- #include <cstdlib>
- #include <limits>
- #define REP(i,n) for (long long i = 0; i < (long long)n; i++)
- using namespace std;
- typedef long long ll;
- const int MOD = 100000000;
- ll f[102][102][12][2];
- int main() {
- #ifdef CONTEMPLATOR
- ifstream cin("input.txt");
- ofstream cout("output.txt");
- #endif
- int n1,n2,k1,k2;
- cin >> n1 >> n2 >> k1 >> k2;
- f[0][0][0][0] = 1;
- for (int i = 0; i < 101; i++)
- for (int j = 0; j < 101; j++)
- for (int k = 0; k < 11; k++) {
- if (f[i][j][k][0] > 0) {
- if (k < k1) {
- f[i+1][j][k+1][0] = (f[i+1][j][k+1][0] + f[i][j][k][0]) % MOD;
- }
- f[i][j+1][1][1] = (f[i][j+1][1][1] + f[i][j][k][0]) % MOD;
- }
- if (f[i][j][k][1] > 0) {
- if (k < k2) {
- f[i][j+1][k+1][1] = (f[i][j+1][k+1][1] + f[i][j][k][1]) % MOD;
- }
- f[i+1][j][1][0] = (f[i+1][j][1][0] + f[i][j][k][1]) % MOD;
- }
- }
- ll ans = 0;
- for (int i = 0; i <= k1; i++)
- ans = (ans + f[n1][n2][i][0]) % MOD;
- for (int i = 0; i <= k2; i++)
- ans = (ans + f[n1][n2][i][1]) % MOD;
- cout << ans << endl;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement