poj 1664

递推公式。

代码:

#include<iostream>
#include<fstream>

using namespace std;

int dp[11][11];
int v[11][11];

int solve(int s,int t){
	if(t==0) return 1;
	if(s==1) return 1;

	if(v[s][t]) return dp[s][t];
	v[s][t]=1;
	dp[s][t]=solve(s-1,t);
	if(t>=s) dp[s][t]+=solve(s,t-s);
	return dp[s][t];
}

void read(){
//	ifstream cin("in.txt");
	int i,j,k;
	cin>>k;
	while(k--)
	{
		cin>>i>>j;
		cout<<solve(j,i)<<endl;
	}
}


int main(){
	read();
	return 0;
}

posted on 2011-04-22 14:55  宇宙吾心  阅读(161)  评论(0)    收藏  举报

导航