UVa 11137 - Ingenuous Cubrency

主题:统计有多少种可能是多维数据集的数字表示。

分析:dp。完全背包。见整数分割。

说明:csdn冲进前1000该,(*^__^*) 嘻嘻……。

#include <iostream>
#include <cstdlib>
#include <cstring>

using namespace std;

int cube[25];
long long F[10001];

int main()
{
	for (int i = 0 ; i <= 21 ; ++ i)
		cube[i] = i*i*i;
	for (int i = 0 ; i < 10000 ; ++ i)
		F[i] = 0LL;
	F[0] = 1LL;
	for (int i = 1 ; i <= 21 ; ++ i)
	for (int j = cube[i] ; j < 10000 ; ++ j)
		F[j] += F[j-cube[i]];
		
	int n;
	while (cin >> n)
		cout << F[n] << endl;
	
	return 0;
}

posted @ 2015-12-06 08:58  mengfanrong  阅读(180)  评论(0)    收藏  举报
众安尊享e升2025版 - 底部横幅广告
尊享e升 2025版
🚀 全新升级
百万医疗险全面升级 守护健康人生
✓ 一般医疗300万
✓ 重疾600万
✓ 6年保证续保
✓ 1万免赔额
600万
最高保障
首月特惠价
低至1元起
🛡️ 立即投保