1331 function run fun.cpp
来自「威士忌的HDU题解.大概有260多题的源码。对于学习非常有好处。」· C++ 代码 · 共 55 行
CPP
55 行
/*
1331 Function Run Fun
Time Limit : 1000 ms Memory Limit : 32768 K Output Limit : 256 K
GUN C++
*/
#include <iostream>
using namespace std;
const int Max=21;
int w[Max][Max][Max]={0};
bool v[Max][Max][Max]={false};
int solve(int a,int b,int c)
{
int temp;
if(a<=0 || b<=0 || c<=0)
return 1;
if(a>20 || b>20 || c>20)
return solve(20,20,20);
if(v[a][b][c])
return w[a][b][c];
else
{
if(a<b && b<c)
{
temp=solve(a, b, c-1) + solve(a, b-1, c-1) - solve(a, b-1, c);
v[a][b][c]=true;
w[a][b][c]=temp;
}
else
{
temp=solve(a-1, b, c) + solve(a-1, b-1, c) + solve(a-1, b, c-1) - solve(a-1, b-1, c-1);
v[a][b][c]=true;
w[a][b][c]=temp;
}
return temp;
}
}
int main()
{
int a,b,c,i,j,k;
while(cin>>a>>b>>c && (a!=-1 || b!=-1 || c!=-1) )
{
cout<<"w("<<a<<", "<<b<<", "<<c<<") = "<<solve(a,b,c)<<endl;
}
return 0;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?