bzoj.org P07255 数字的拆分之二

Description

将数字N进行拆分.拆分出来的数字可以重复使用.

Format

Input

每一行给出一个数字N,3<=N<=500.整个测试以0代表结束.

Output

拆分的种数.

这道题,看似变态难写,实则。。。

一道******题。

(观众:哇。。。。。。)

这题是个简简单单的dp!

N就是背包容量,但是物品体积在哪捏???

就是1~n的每个数嘛。。。。。。

解决这些问题后,就简单了!

tip:十年OI一场空,开了 long long 见祖宗!!!一定得开 unsigned long long!

点击查看代码
#include<bits/stdc++.h>
#define rep(i,a,b) for(long long i=a;i<=b;i++)
#define pep(i,a,b) for(long long i=a;i>=b;i--)
#define debug(a) cout<<#a<<"="<<a<<endl;
using namespace std;
unsigned long long n;
unsigned long long dp[505];
int main()
{
  while(cin>>n&&n!=0)
  {
  	memset(dp,0,sizeof(dp));
    dp[0]=1;
    rep(i,1,n)
    {
  	  rep(j,i,n) dp[j]+=dp[j-i];
    }
    cout<<dp[n]<<endl;
  }
  return 0;	
}
有兴趣的看看这两题:

https://www.cnblogs.com/LuoCR2012/p/18253106

https://www.cnblogs.com/LuoCR2012/p/18253108

posted @   OI_LuoCR  阅读(2)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
点击右上角即可分享
微信分享提示