0pts求助
查看原帖
0pts求助
662457
Tansy20211206楼主2023/7/11 16:45
#include<bits/stdc++.h>
using namespace std;
long long t[25][25][25];
int w(long long a,long long b,long long c)
{
	if(a<=0||b<=0||c<=0)return 1;
	else if(a>20||b>20||c>20)return w(20,20,20);
	else if(w[a][b][c])return t[a][b][c];
	else if(a<b<c)return w(a,b,c-1)+w(a,b-1,c-1)-w(a,b-1,c);
	else t[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 t[a][b][c];
}
int main()
{
	long long x,y,z;
	while(1)
	{
		cin>>x>>y>>z;
		if(x==-1&&y==-1&&z==-1)break;
		cout<<"w("<<x<<", "<<y<<", "<<z<<") = "<<w(x,y,z)<<endl;
	}
	return 0;
}

悬赏一个关注

2023/7/11 16:45
加载中...