求助 %深搜+记忆化 0分 样例全过,奇怪的是下载样例后,输出与样例一样
查看原帖
求助 %深搜+记忆化 0分 样例全过,奇怪的是下载样例后,输出与样例一样
590571
_weishiqi66_楼主2022/11/29 14:01

求助 %深搜+记忆化 0分 样例全过,奇怪的是下载样例后,输出与样例一样

#include<bits/stdc++.h>
#define ll long long
#define N 2*int(1e5)
using namespace std;
int a,b,c,ans;
int f[25][25][25];
int  w(int a,int b,int c){
	if(a<=0||b<=0||c<=0) return 1;
	else if(f[a][b][c]!=0) return f[a][b][c];
	
	else if(a>20||b>20||c>20) f[a][b][c]=w(20,20,20);
	else if(a<b&&b<c) f[a][b][c]= w(a,b,c-1)+w(a,b-1,c-1)-w(a,b-1,c);
	else f[a][b][c]=w(a-1,b,c)+w(a-1,b-1,c)+w(a-1,b,c-1)-w(a-1,b-1,c-1);
	return f[a][b][c];
}
int main(){
	while(1){
		cin>>a>>b>>c;
		ans=0;
		if(a==-1&&b==-1&&c==-1) break;
		if(a>20) a=21;
		if(b>20) b=21;
		if(c>20) c=21;
		printf("w(%d, %d, %d) = ",a,b,c);
		printf("%d\n",w(a,b,c));
	
	}
	return 0;
}
2022/11/29 14:01
加载中...