题解
2025-11-08 13:18:45
发布于:浙江
3阅读
0回复
0点赞
#include<bits/stdc++.h>
using namespace std;
using ll=long long;
ll w(ll a,ll b,ll c){
if(a<=0||b<=0||c<=0) return 1;
if(a>20||b>20||c>20) return 1048576;
if(a<=b||a<=c) return (ll)(pow(2,a));
return w(a-1,b,c)+w(a-1,b-1,c)+w(a-1,b,c-1)-w(a-1,b-1,c-1);
}
int main(){
ll a,b,c;
while(1){
cin>>a>>b>>c;
if(a==-1&&b==-1&&c==-1) return 0;
cout<<"w("<<a<<","<<b<<","<<c<<") ="<<w(a,b,c)<<endl;
}
return 0;
}
这里空空如也

有帮助,赞一个