Submission #1838245


Source Code Expand

#include <iostream>
#include <cstdio>
#include <cstring>
#include <cassert>
#include <cctype>
using namespace std;
typedef long long lint;
#define cout cerr
#define ni (next_num<int>())
template<class T>inline T next_num(){
	T i=0;char c;
	while(!isdigit(c=getchar())&&c!='-');
	bool flag=c=='-';
	flag?c=getchar():0;
	while(i=i*10-'0'+c,isdigit(c=getchar()));
	return flag?-i:i;
}
template<class T1,class T2>inline void apmax(T1 &a,const T2 &b){if(a<b)a=b;}
template<class T1,class T2>inline void apmin(T1 &a,const T2 &b){if(b<a)a=b;}
const int N=3010,O=1000000007;
int f[N][N][2];
int main(){
	int n=ni,m=ni;
	memset(f,0,sizeof(f));
	for(int i=0;i<=n;i++){
		f[0][i][i==0]=1;
	}
	for(int i=1;i<=m;i++){
		for(int j=0;j<=n;j++){
			for(int k=0;k<2;k++){
				int F=f[i-1][j][k];
				if(F==0)continue;
				int cnt1=j,cnt2=n-j;
				for(int a=0;a<=1;a++){
					if(cnt1-a<0)continue;
					if(cnt2-(!a)<0)continue;
					for(int b=0;b<=1;b++){
						(f[i][cnt1-a+1-b][k||cnt1-a==0||cnt1-a+1-b==0]+=F)%=O;
					}
				}
			}
		}
	}
	lint ans=0;
	for(int i=0;i<=n;i++){
		ans+=f[m][i][1];
	}
	printf("%lld\n",ans%O);
	return 0;
}

Submission Info

Submission Time
Task D - Piling Up
User sshockwave
Language C++14 (GCC 5.4.1)
Score 900
Code Size 1169 Byte
Status AC
Exec Time 233 ms
Memory 71040 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 900 / 900
Status
AC × 3
AC × 33
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 23 ms 71040 KB
sample_02.txt AC 23 ms 71040 KB
sample_03.txt AC 108 ms 71040 KB
subtask_1_01.txt AC 50 ms 71040 KB
subtask_1_02.txt AC 37 ms 71040 KB
subtask_1_03.txt AC 90 ms 71040 KB
subtask_1_04.txt AC 80 ms 71040 KB
subtask_1_05.txt AC 174 ms 71040 KB
subtask_1_06.txt AC 90 ms 71040 KB
subtask_1_07.txt AC 100 ms 71040 KB
subtask_1_08.txt AC 47 ms 71040 KB
subtask_1_09.txt AC 173 ms 71040 KB
subtask_1_10.txt AC 233 ms 71040 KB
subtask_1_11.txt AC 90 ms 71040 KB
subtask_1_12.txt AC 66 ms 71040 KB
subtask_1_13.txt AC 82 ms 71040 KB
subtask_1_14.txt AC 49 ms 71040 KB
subtask_1_15.txt AC 42 ms 71040 KB
subtask_1_16.txt AC 103 ms 71040 KB
subtask_1_17.txt AC 47 ms 71040 KB
subtask_1_18.txt AC 54 ms 71040 KB
subtask_1_19.txt AC 55 ms 71040 KB
subtask_1_20.txt AC 107 ms 71040 KB
subtask_1_21.txt AC 23 ms 71040 KB
subtask_1_22.txt AC 23 ms 71040 KB
subtask_1_23.txt AC 23 ms 71040 KB
subtask_1_24.txt AC 23 ms 71040 KB
subtask_1_25.txt AC 23 ms 71040 KB
subtask_1_26.txt AC 23 ms 71040 KB
subtask_1_27.txt AC 23 ms 71040 KB