全部WA
  • 板块P1464 Function
  • 楼主jknbhbuy
  • 当前回复3
  • 已保存回复3
  • 发布时间2021/8/29 20:02
  • 上次更新2023/11/4 08:36:58
查看原帖
全部WA
309796
jknbhbuy楼主2021/8/29 20:02
#include<bits/stdc++.h>

using namespace std;

long long val[105][105][105];
long long dfs(long long a,long long b,long long c){
	if(a<=0||b<=0||c<=0){
		return 1;
	}
	else if(val[a][b][c])return val[a][b][c];
	else if(a>20||b>20||c>20){
		return val[20][20][20]=dfs(20,20,20);
	}
	else if(a<b&&b<c){
		val[a][b][c-1]=dfs(a,b,c-1);
		val[a][b-1][c-1]=dfs(a,b-1,c-1);
		val[a][b-1][c]=dfs(a,b-1,c);
		return val[a][b][c-1]+val[a][b-1][c-1]-val[a][b-1][c];
	}
	else {
		val[a-1][b][c]=dfs(a-1,b,c);
		val[a-1][b-1][c]=dfs(a-1,b-1,c);
		val[a-1][b][c-1]=dfs(a-1,b,c-1);
		val[a-1][b-1][c-1]=dfs(a-1,b-1,c-1);
		return val[a-1][b][c]+val[a-1][b-1][c]+val[a-1][b][c-1]-val[a-1][b-1][c-1];
	}
}
int main(){
	long long x,y,z;
	while(scanf("%lld%lld%lld",&x,&y,&z)){
		if(x==-1&&y==-1&&z==-1)break;
		printf("w(%lld, %lld, %lld) = %lld",x,y,z,dfs(x,y,z));
	}
	return 0;
}
2021/8/29 20:02
加载中...