1. 程式人生 > >【ACM】POJ 1664

【ACM】POJ 1664

現在還不能理解為什麼

至少有一個盤子用f(m,n-1)表示就可以了 

AC:

#include <iostream>
#include <cstdio>
using namespace std;
int f(int m,int n)
{
	if(m==1 || n==1 || m==0)	return 1;
	else if(m<n)	return 	f(m,m);
	else
	{
		return f(m-n,n)+f(m,n-1);
	}
}
int main ()
{
	int m,n,T;
	cin>>T;
	while(T--)
	{
		cin>>m>>n;
		printf("%d\n",f(m,n));
	}
	return 0;
}