物资调度
时间限制:1000 ms  |  内存限制:65535 KB
难度:2
描述
某地区发生了地震,灾区已经非常困难,灾民急需一些帐篷、衣物、食品和血浆等物资。可通往灾区的道路到处都是塌方,70%以上的路面损坏,桥梁全部被毁。国家立即启动应急预案,展开史上最大强度非作战空运行动,准备向灾区空投急需物资。
一方有难,八方支援。现在已知有N个地方分别有A1,A2,….,An个物资可供调配。目前灾区需要物资数量为M。
现在,请你帮忙算一算,总共有多少种物质调度方案。
假设某地方一旦被选择调配,则其物资数全部运走。
输入
输入一个组数T。(0<T<10)
之后为N,M含义分别如题目描述。(0<N<=100,0<M<=1000)
之后有N个数字A1,A2,….,An表示N个地方每个地方的物资数。(0<Ai<=1000)
输出
对于每组测试数据,输出一行:物资调度的总方案数
样例输入
2
4 4
1 1 2 2
4 6
1 1 2 2
样例输出
3
1

#include<stdio.h>
#include<string.h>int main(){int t;int n,m;int a[113];int dp[1010];scanf("%d",&t);while(t--){memset(dp,0,sizeof(dp));memset(a,0,sizeof(a));scanf("%d%d",&n,&m);for(int i=1;i<=n;i++)scanf("%d",&a[i]);for(int i=1;i<=n;i++){for(int j=m;j>a[i];j--)dp[j]+=dp[j-a[i]];dp[a[i]]+=1;         }printf("%d\n",dp[m]);}
}

//dfs

#include <cstdio>
#include <cstring>
using namespace std;
int s[100+10];
int vis[100+10];
int count,n,m;
void DFS(int sum,int cur)
{if(sum>=m){if(sum == m){ //找到符合的 加 1 count++;return ;}return ;}for(int i=cur;i<n;i++){if(!vis[i]){vis[i] = 1;sum += s[i]; DFS(sum,i);vis[i] = 0;sum -= s[i];}}
}
int main()
{int T;scanf("%d",&T);while(T--){count = 0;int i,j;memset(vis,0,sizeof(vis));scanf("%d%d",&n,&m);for(i=0;i<n;i++){scanf("%d",&s[i]);}DFS(0,0);printf("%d\n",count);}return 0;
}

物资调度(01背包+求方案数)相关推荐

  1. [01背包] 背包问题求具体方案(01背包+求方案数+思维)

    文章目录 0. 前言 1. 01背包+求方案数+思维 0. 前言 相关: [背包] 背包问题算法模板(模板) 1. 01背包+求方案数+思维 12. 背包问题求具体方案 求方案数也是背包问题.dp 的 ...

  2. [01背包] 数字组合(01背包+求方案数)

    文章目录 0. 前言 1. 01背包求方案数 0. 前言 相关: [背包] 背包问题算法模板(模板) 1. 01背包求方案数 278. 数字组合 将 M 看作背包容量,每个数看成一个物品,Ai 看成是 ...

  3. 【01背包求方案数模板】洛谷 P1164 小A点菜

    洛谷 P1164 小A点菜 https://www.luogu.org/problemnew/show/P1164 题目背景 uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家--餐馆, ...

  4. [完全背包] 货币系统(完全背包+求方案数)

    文章目录 0. 前言 1. 完全背包+求方案数+思维 0. 前言 相关: [背包] 背包问题算法模板(模板) 强相关: [完全背包] 买书(完全背包+裸题) [完全背包] 货币系统(完全背包+求方案数 ...

  5. 7-30 找单词——多重背包求方案数

    假设有x1个字母A, x2个字母B,- x26个字母Z,同时假设字母A的价值为1,字母B的价值为2,- 字母Z的价值为26.那么,对于给定的字母,可以找到多少价值<=50的单词呢?单词的价值就是 ...

  6. 牛客练习赛20 A-礼物(组合数学 or 完全背包求方案数)

    题目链接:https://ac.nowcoder.com/acm/contest/128/A?&headNav=www 题目描述 如果不想读故事的話,可以直接跳到最后一段...     大一开 ...

  7. C. Feast Coins(背包求方案数)

    ICPC Arab Collegiate Programming Contest 2014 C题 题解:转化为因子考虑,因为每一种选取相同的个数 #include <bits/stdc++.h& ...

  8. 动态规划之如何将问题抽象转化为0-1背包问题(详解利用动态规划求方案数)

    ⭐️前面的话⭐️ 本篇文章介绍如何对问题抽象转化成0-1背包问题求解和运用0-1背包求方案数.

  9. 01背包,完全背包,多重背包,混合背包,二维费用背包,分组背包,背包问题求方案数

    1 01背包问题 有 NNN 件物品和一个容量是 VVV 的背包.每件物品只能使用 一次. 第 iii 件物品的体积是 viv_ivi​,价值是 wiw_iwi​.求解将哪些物品装入背包,可使这些物品 ...

最新文章

  1. ubuntu18.04安装CUDA10.0
  2. java中@Qualifier(string)是什么用法
  3. 唐尼vr眼镜好吗_科普:眼镜片有哪些种类?镜片越薄越好吗?无框眼镜配什么材质?...
  4. 如何处理error message Invalid parametertype used at function XXXX
  5. K8S Learning(10)——Pod配置
  6. 破解Navicat for MySql
  7. R12应付款模块的费用报表(Expense Report)处理流程
  8. 文本相似度算法——空间向量模型的余弦算法和TF-IDF
  9. mysql 修改前缀_批量修改mysql的表前缀
  10. Python 中的容器
  11. 如何一键查看你的QQ/绑定了多少应用?
  12. 手把手教你制作一个操作系统
  13. 《炬丰科技-半导体工艺》 基于光电化学蚀刻技术的 GaN 微结构表面电荷光刻
  14. 吴恩达新课快来了!万字博客回顾机器学习算法起源
  15. 好看的皮囊 · 也是大自然的杰作 · 全球高质量 · 美图 · 集中营 · 美女 · 2017-08-28期...
  16. (一)1. 数据流图(DFD)概念及画法
  17. 青海平弦乐库的建设与播放平台
  18. WEB服务器搭建与配置
  19. Thinkepad X270 升级内存升级SSD重装WIN7经历(解决HD 620驱动 热键调节亮度)
  20. 慕尼黑大学计算机硕士专业,2020年慕尼黑大学专业设置

热门文章

  1. 学习CYQ.DATA
  2. 【Android】仿蚂蚁森林,树木弹动动画
  3. c语言常用编程,常用C语言编程的习惯.doc
  4. 何为时间戳?时间戳的由来
  5. 商家超过600万,有赞怎么解决签约难题?
  6. 选对池塘钓大鱼([美]雷恩·吉尔森)第一章 钓鱼课:垂钓的快乐规则
  7. php ajax点击收藏,phpmysqlajax无刷新点赞与收藏
  8. 1006: 兽兽扔球
  9. haproxy配置TCP代理
  10. 怎么在各大平台推广app?怎么推广最有效?