#include<iostream>
using namespace std;
long long w(int a,int b,int c){
long long matrix[21][21][21];
for(int i=0;i<21;i++) {
for(int j=0;j<21;j++) {
for(int k=0;k<21;k++) {
if(i==0 || j == 0 || k == 0) {
matrix[i][j][k] = 1;
}
else if(i<j && j<k){
matrix[i][j][k] = matrix[i][j][k-1] + matrix[i][j-1][k-1] - matrix[i][j-1][k];
}else{
matrix[i][j][k] = matrix[i-1][j][k] +matrix[i-1][j-1][k]+matrix[i-1][j][k-1]-matrix[i-1][j-1][k-1];
}
}
}
}
if(a<=0 || b <= 0 || c <= 0) {
return 1;
}
if(a > 20 || b > 20 || c > 20)
return matrix[20][20][20];
return matrix[a][b][c];
}
int main(){
int x,y,z;
while(x!=-1&&y!=-1&&z!=-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;
}
让人春分日 哈工科教100511.功能函数
最新推荐文章于 2024-08-18 21:07:18 发布