为什么怎么测都不对?
  • 板块P1464 Function
  • 楼主xawmh2023
  • 当前回复5
  • 已保存回复5
  • 发布时间2023/12/31 15:39
  • 上次更新2023/12/31 18:18:04
查看原帖
为什么怎么测都不对?
788733
xawmh2023楼主2023/12/31 15:39
#include <iostream>
using namespace std;
const int N = 23;
int f[N][N][N]; 
int w(long long a,long long  b,long long  c)
{
	if (f[a][b][c])
	{
		return f[a][b][c];
	}
	if (a <= 0 || b <= 0 || c <= 0)
	{
		f[1][1][1] = 1;
		return 1;
	}
	if (a > 20 || b > 20 || c > 20)
	{
		f[20][20][20] = w(20,20,20);
		return f[20][20][20];
	}
	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);
		return  w(a,b,c-1)+w(a,b-1,c-1)-w(a,b-1,c);
	}
	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 a,b,c;
	while(true)
	{
		cin >> a >> b >> c;
		if(a == -1 && b == -1 && c == -1)
			break;
		cout << "w(" << a << ", " << b << ", " << c << ") = ";
		cout << w(a, b, c) << endl;
	 }
	return 0;
}

自我感觉良好

2023/12/31 15:39
加载中...