RE求调
  • 板块P1464 Function
  • 楼主AETHER2010
  • 当前回复1
  • 已保存回复1
  • 发布时间2024/8/31 22:39
  • 上次更新2024/9/1 13:01:35
查看原帖
RE求调
1331366
AETHER2010楼主2024/8/31 22:39

问题代码如下,试着用记忆化RE了。

int q[25][25][25]={-1};
long long w(long long a,long long b,long long c){
	if(a<=0 || b<=0 || c<=0){
		return 1;
	}
	if(q[a][b][c]!=-1){
		return q[a][b][c];
	}
	if(a>20 || b>20 || c<20){
		return w(20,20,20);
	}
	else if(a<b && b<c){
		if(q[a][b][c-1]==-1){
			q[a][b][c-1]=w(a,b,c-1);
		}
		if(q[a][b-1][c-1]==-1){
			q[a][b-1][c-1]=w(a,b-1,c-1);
		}
		if(q[a][b-1][c]==-1){
			q[a][b-1][c]=w(a,b-1,c);
		}
		q[a][b][c] = q[a][b][c-1]+q[a][b-1][c-1]-q[a][b-1][c];
	}
	else{
		if(q[a-1][b][c]==-1){
			q[a-1][b][c]=w(a-1,b,c);
		}
		if(q[a-1][b-1][c]==-1){
			q[a-1][b-1][c]=w(a-1,b-1,c);
		}
		if(q[a-1][b][c-1]==-1){
			q[a-1][b][c-1]=w(a-1,b,c-1);
		}
		if(q[a-1][b-1][c-1]==-1){
			q[a-1][b-1][c-1]=w(a-1,b-1,c-1);
		}
		q[a][b][c] = q[a-1][b][c]+q[a-1][b-1][c]+q[a-1][b-1][c]-q[a-1][b-1][c-1];
	}
}
2024/8/31 22:39
加载中...