#include <iostream> #include <math.h> using namespace std; long int fun(int a, int b, int c, int d,long int t){ if(a==c&&b==d){ return t; } else{ if(a!=0){ return fun(a-1,b+1,c,d,t+1); } else{ return fun(b+1,0,c,d,t+1); } } } int main(){ int n,a,b,c,d,i; long int ans; cin>>n; for(i=1;i<=n;i++){ cin>>a>>b>>c>>d; cout<<"Case "<<i<<": "; ans=fun(0,0,b,a,0); ans=fun(0,0,d,c,0)-ans; cout<<abs(ans)<<endl; } }
這個有公式解,別用遞迴。 [ oeis a000217 ]
這個有公式解,別用遞迴。 [ oeis a000217 ]
了解,謝謝。