Submission #1692012
Source Code Expand
#include <bits/stdc++.h>
using namespace std;
typedef long long LL;
typedef pair<int, int> pii;
#define fst first
#define snd second
#define pb push_back
#define REP(i, a, b) for(int i = (a), i##end = (b); i < i##end; ++i)
#define DREP(i, a, b) for(int i=(a-1), i##end = (b); i >=i##end; --i)
template <typename T> bool chkmax(T& a, T b) { return a < b ? a = b, 1 : 0; }
template <typename T> bool chkmin(T& a, T b) { return a > b ? a = b, 1 : 0; }
const int N = 3000;
const int mo = 1e9 + 7;
const int oo = 0x3f3f3f3f;
template<typename T> T read() {
T n(0), f(1);
char ch = getchar();
for(;!isdigit(ch); ch = getchar()) if(ch == '-') f = -1;
for(; isdigit(ch); ch = getchar()) n = n * 10 + ch - 48;
return n * f;
}
int n, m;
int f[N + 5][N + 5][2];
inline void add(int &a, int b) {
if((a += b) >= mo) a -= mo;
}
int main() {
#ifdef Wearry
freopen("data.txt", "r", stdin);
freopen("ans.txt", "w", stdout);
#endif
scanf("%d%d", &n, &m);
for(int i = 0; i <= n; ++i) f[0][i][!i] = 1;
for(int i = 1; i <= m; ++i) {
for(int j = 0; j <= n; ++j) {
if(j > 0) {
add(f[i][j][(j == 1)], f[i-1][j][0]);
add(f[i][j][1], f[i-1][j][1]);
add(f[i][j-1][(j == 1)], f[i-1][j][0]);
add(f[i][j-1][1], f[i-1][j][1]);
}
if(j < n) {
add(f[i][j][0], f[i-1][j][0]);
add(f[i][j][1], f[i-1][j][1]);
add(f[i][j+1][0], f[i-1][j][0]);
add(f[i][j+1][1], f[i-1][j][1]);
}
}
}
int ans = 0;
for(int j = 0; j <= n; ++j) {
add(ans, f[m][j][1]);
}
printf("%d\n", ans);
return 0;
}
Submission Info
Submission Time
2017-10-18 16:58:50+0900
Task
D - Piling Up
User
Wearry
Language
C++14 (GCC 5.4.1)
Score
900
Code Size
1806 Byte
Status
AC
Exec Time
178 ms
Memory
70656 KB
Compile Error
./Main.cpp: In function ‘int main()’:
./Main.cpp:41:26: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
scanf("%d%d", &n, &m);
^
Judge Result
Set Name
Sample
All
Score / Max Score
0 / 0
900 / 900
Status
Set Name
Test Cases
Sample
sample_01.txt, sample_02.txt, sample_03.txt
All
sample_01.txt, sample_02.txt, sample_03.txt, sample_01.txt, sample_02.txt, sample_03.txt, subtask_1_01.txt, subtask_1_02.txt, subtask_1_03.txt, subtask_1_04.txt, subtask_1_05.txt, subtask_1_06.txt, subtask_1_07.txt, subtask_1_08.txt, subtask_1_09.txt, subtask_1_10.txt, subtask_1_11.txt, subtask_1_12.txt, subtask_1_13.txt, subtask_1_14.txt, subtask_1_15.txt, subtask_1_16.txt, subtask_1_17.txt, subtask_1_18.txt, subtask_1_19.txt, subtask_1_20.txt, subtask_1_21.txt, subtask_1_22.txt, subtask_1_23.txt, subtask_1_24.txt, subtask_1_25.txt, subtask_1_26.txt, subtask_1_27.txt
Case Name
Status
Exec Time
Memory
sample_01.txt
AC
1 ms
256 KB
sample_02.txt
AC
2 ms
384 KB
sample_03.txt
AC
86 ms
69248 KB
subtask_1_01.txt
AC
22 ms
14592 KB
subtask_1_02.txt
AC
20 ms
27520 KB
subtask_1_03.txt
AC
72 ms
69120 KB
subtask_1_04.txt
AC
56 ms
38400 KB
subtask_1_05.txt
AC
131 ms
61696 KB
subtask_1_06.txt
AC
72 ms
69120 KB
subtask_1_07.txt
AC
78 ms
64768 KB
subtask_1_08.txt
AC
33 ms
45952 KB
subtask_1_09.txt
AC
135 ms
70144 KB
subtask_1_10.txt
AC
178 ms
70656 KB
subtask_1_11.txt
AC
70 ms
64640 KB
subtask_1_12.txt
AC
45 ms
40064 KB
subtask_1_13.txt
AC
67 ms
68992 KB
subtask_1_14.txt
AC
39 ms
60160 KB
subtask_1_15.txt
AC
22 ms
21632 KB
subtask_1_16.txt
AC
83 ms
69248 KB
subtask_1_17.txt
AC
29 ms
33792 KB
subtask_1_18.txt
AC
33 ms
29952 KB
subtask_1_19.txt
AC
46 ms
68608 KB
subtask_1_20.txt
AC
86 ms
69248 KB
subtask_1_21.txt
AC
9 ms
27264 KB
subtask_1_22.txt
AC
22 ms
68352 KB
subtask_1_23.txt
AC
12 ms
35456 KB
subtask_1_24.txt
AC
22 ms
68352 KB
subtask_1_25.txt
AC
2 ms
384 KB
subtask_1_26.txt
AC
22 ms
68352 KB
subtask_1_27.txt
AC
1 ms
256 KB