0分求助大神帮助
  • 板块P1464 Function
  • 楼主zhoujiatao
  • 当前回复2
  • 已保存回复2
  • 发布时间2023/10/28 09:34
  • 上次更新2023/11/2 11:08:05
查看原帖
0分求助大神帮助
797700
zhoujiatao楼主2023/10/28 09:34

代码:

#include<bits/stdc++.h>
using namespace std;
const int N=25;
const int M=1e6;
long long f[N][N][N];
long long 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()
{
	long long x,y,z;
	while(1)
	{
		cin>>x>>y>>z;
		if(x==-1&&y==-1&&z==-1)
			break;
		printf("w(%d,%d,%d) = ",x,y,z);
		printf("%d",w(x,y,z));
		cout<<endl;
	}
	return 0;
}

样例过来了但...

有大神看看改改谢谢

2023/10/28 09:34
加载中...