测试地址:链接

题意描述:给定一个自然数N,要求把N拆分成若干个正整数相加的形式,参与加法运算的数可以重复。求拆分的方案数 mod 2147483648的结果。1≤N≤4000。

输入格式:

一个整数n。

输出格式:

输出一个数,即所有方案数
因为这个数可能非常大,所以你只要输出这个数 mod 2147483648 的余数即可。

解题思路:首先2147483648是一个很大的数,至少用int存储是有风险的,所以我们可以用unsigned或者直接用long类型。而本题本质上就是完全背包问题,所以可以采用多重背包的模型,稍微修改即得到答案。

代码示例:

#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
const unsigned m = 2147483648u;
const int maxn = 4000+100;
int f[maxn];
void solve(int n){memset(f,0,sizeof f);f[0] = 1;for(int i = 1;i <= n;i++){for(int v = i;v <= n;v++){f[v] = (f[v] + f[v-i])%m;}}cout << (f[n]>0?f[n]-1:m-1) << endl;
}
int main(){int n;//freopen("123.in","r",stdin);while(scanf("%d",&n) != EOF){solve(n);}return 0;
}

TVYJ1172 自然数拆分Lunatic版(完全背包问题)相关推荐

  1. 再练动态规划——(2)自然数拆分Lunatic版

    自然数拆分Lunatic版 题目描述 输入自然数 nnn ,然后将其拆分成由若干数相加的形式,参与加法运算的数可以重复. 输入格式 输入只有一个整数 nnn ,表示待拆分的自然数 nnn . 0< ...

  2. 【背包dp】自然数拆分Lunatic版

    Tyvj 1172 自然数拆分Lunatic版 题意:给定一个自然数n(1<= n <= 4000), 要求把自然数n拆分成n个正整数相加的情况(正整数可以重复出现, 但顺序不同仍视为同一 ...

  3. CH5202 自然数拆分Lunatic版【完全背包】

    5202 自然数拆分Lunatic版 0x50「动态规划」例题 描述 给定一个自然数N,要求把N拆分成若干个正整数相加的形式,参与加法运算的数可以重复.求拆分的方案数 mod 2147483648的结 ...

  4. TYVJ1172 自然数拆分Lunatic版 - 背包DP[完全背包]

    TYVJ1172 自然数拆分Lunatic版 传送门 思路: 类比TYVJ1096 数字组合 , 本题的数字可以重复使用,所以是一个完全背包模型.\(f[i,j]\)表示当前选到第\(i\)类数字凑成 ...

  5. [JOYOI] 自然数拆分Lunatic版

    题目背景 话说小小鱼看了P1171(自然数拆分)之后感觉异常不爽,于是异常邪恶地将题目加强.题目描述 输入自然数n,然后将其拆分成由若干数相加的形式,参与加法运算的数可以重复.输入格式 输入只有一个整 ...

  6. tyvj1172 自然数拆分Lunatic版

    背景 话说小小鱼看了P1171(自然数拆分)之后感觉异常不爽,于是异常邪恶地将题目加强. 描述 输入自然数n,然后将其拆分成由若干数相加的形式,参与加法运算的数可以重复. 输入格式 输入只有一个整数n ...

  7. 自然数拆分Lunatic版

    第二天叫醒我的不是闹钟,是梦想! 题目描述 给定一个自然数N,要求把N拆分成若干个正整数相加的形式,参与加法运算的数可以重复.求拆分的方案数 mod 2147483648的结果.1≤N≤4000. 输 ...

  8. 问题 I: 自然数拆分Lunatic版

    你的忏悔或许会让你心安,但未必别人如此. 题目描述 给定一个自然数N,要求把N拆分成若干个正整数相加的形式,参与加法运算的数可以重复.求拆分的方案数 mod 2147483648的结果.1≤N≤400 ...

  9. 自然数拆分 Lunatic版 TYVJ1172(完全背包)

    题目: 输入自然数n,然后将其拆分成由若干数相加的形式,参与加法运算的数可以重复. 输入格式: 输入只有一个整数n,表示待拆分的自然数n. 1<=n<=4000 输出格式: 输出一个数,即 ...

最新文章

  1. “面试不败计划“:hibernate和mybatis比较
  2. lsass.exe 当试图更新密码时_“驱动人生”下载器木马再度更新-你应该注意什么?...
  3. 搭建golang webcron 定时任务管理平台
  4. web 端JS取得window 的按键动作(按下Shift, Alt,Ctrl....)
  5. bzoj 4956: [Wf2017]Secret Chamber at Mount Rushmore(最短路)
  6. 360换机 v2.12.5.9 官方安卓版
  7. Head First Java(中文版)
  8. JAVA经典算法题目
  9. 温湿度传感器的工作原理及应用领域你了解多少呢
  10. java 一元三次方程_一元三次方程盛金公式求解的java实现
  11. 蜂鸣器电路设计中选用注意事项--【电路设计】
  12. PS如何用制作BMP 256位色非压缩图片,供Easyboot作为背景
  13. 既是计算机高手,也是情书高手,原来王小波才是最会撩妹的程序员
  14. 如何使用命令行合成一句话图片木马
  15. 可爱的小老鼠计算机教案,大班语言儿歌教案《小老鼠玩电脑》
  16. 【业务数据分析】——十大常用数据分析方法
  17. 液晶坏点如何鉴别 LCD显示器选购之道
  18. brew 一直等待_壹配资网门户技术解盘20201104:尿素遇阻回落 铜等待突破-股票外汇期货配资门户...
  19. 低码框架 json-script-rule 高级查询说明
  20. u盘无法格式化不在计算机中,U盘无法格式化,里面的文件也无法删除?

热门文章

  1. [P1373]小a和uim之大逃离
  2. 光照探针 Light Probe
  3. linux中文件大小10,Linux之查看文件大小
  4. 2021923学习总结
  5. 【工具】sci-hub:一个神奇的免费下载文献的网站
  6. lionkid2的qqshow中的XML 文档
  7. 笔记本卡顿不流畅是什么原因_笔记本卡顿不流畅是什么原因_笔记本电脑卡顿不流畅如何解决-win7之家...
  8. YC1090货车驱动桥的结构设计(有cad图)
  9. 数码相机(百度百科)
  10. srsLTE:高度模块化的 3GPP LTE 开源库