Submission #48654
ソースコード
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 | //#include<bits/stdc++.h> #include <iostream> #include <cstdio> #include <cstring> #include <string> #include <vector> #include <queue> #include <map> #include <algorithm> #include <utility> #include <climits> #define REP(i, n) for(int i = 0; i < n; ++i) #define FOR(i, a, b) for(int i = a; i < b; ++i) #define F first #define S second #define OUT(x) cout << x << "\n" using namespace std; using point = pair< int , int >; using ll = long long ; const int mod = 1e9 + 7; int N, M; int dp[3005][3005]; int solve( int n, int m); int main() { cin >> N >> M; memset (dp, -1, sizeof (dp)); OUT(solve(N, M)); return 0; } int solve( int n, int m) { if (n == 1 && m == 0) { return dp[n][m] = 1; } else if (m == 0 || n > N || n < 1) { return dp[n][m] = 0; } else if (dp[n][m] != -1) { return dp[n][m]; } else { return dp[n][m] = ((solve(n + 1, m - 1) + solve(n - 1, m - 1)) % mod + solve(n, m - 1)) % mod; } } |
ステータス
項目 | データ |
---|---|
問題 | 1107 - 脱出ゲーム |
ユーザー名 | Wonder /*ei1741*/ |
投稿日時 | 2019-04-24 15:58:57 |
言語 | C++14 |
状態 | Accepted |
得点 | 1 |
ソースコード長 | 1015 Byte |
最大実行時間 | 70 ms |
最大メモリ使用量 | 36008 KB |
セット
セット | 得点 | Cases | |
---|---|---|---|
1 | ALL | 1 / 1 | * |
テストケース
ファイル名 | 状態 | 実行時間 | メモリ使用量 | # |
---|---|---|---|---|
case01.in | AC | 70 ms | 35804 KB |
1
|
case02.in | AC | 69 ms | 35828 KB |
1
|
case03.in | AC | 69 ms | 35724 KB |
1
|
case04.in | AC | 64 ms | 35744 KB |
1
|
case05.in | AC | 56 ms | 35760 KB |
1
|
case06.in | AC | 42 ms | 35780 KB |
1
|
case07.in | AC | 24 ms | 35864 KB |
1
|
case08.in | AC | 25 ms | 36008 KB |
1
|
case09.in | AC | 57 ms | 35904 KB |
1
|
case10.in | AC | 29 ms | 35920 KB |
1
|
sample01.in | AC | 27 ms | 35800 KB |
1
|
sample02.in | AC | 30 ms | 35828 KB |
1
|
sample03.in | AC | 28 ms | 35852 KB |
1
|