砝码称重 洛谷 1441
题目:
题目描述
现有n个砝码,重量分别为a1,a2,a3,……,an,在去掉m个砝码后,问最多能称量出多少不同的重量(不包括0)。
输入输出格式
输入格式:
输入文件weight.in的第1行为有两个整数n和m,用空格分隔
第2行有n个正整数a1,a2,a3,……,an,表示每个砝码的重量。
输出格式:
输出文件weight.out仅包括1个整数,为最多能称量出的重量。
输入输出样例
3 1 1 2 2
3
说明
【样例说明】
在去掉一个重量为2的砝码后,能称量出1,2,3共3种重量。
【数据规模】
对于20%的数据,m=0;
对于50%的数据,m≤1;
对于50%的数据,n≤10;
对于100%的数据,n≤20,m≤4,m<n,ai≤100。
#include <iostream> #include <cstring> using namespace std; int n, m, MAX = 0, answer = 0; int Weight[21]; int F[20001]; bool judge[21]; int Find()//判断每一种重量是否存在,因为所产生的所有的值只可能是1~maxx之间的数 {int total = 0;memset(F, 0, sizeof(F));F[0] = 1;for (int i = 1; i <= n; i++){if (!judge[i]){for (int j = MAX; j >= Weight[i]; j--){F[j] += F[j - Weight[i]];}}}for (int i = 1; i <= MAX; i++){if (F[i]){total++;}}answer = max(answer, total); } void Search(int counts, int pos) {if (counts == m + 1){Find();}else{if (pos > n){return ;//从1~n来一遍}judge[pos] = true;Search(counts + 1, pos + 1);//某一个数字在组合的过程中只有两种可能,一种是选,一种是不选,所以会出现两种情况,故搜两次 judge[pos] = false;Search(counts, pos + 1);} } int main() {cin >> n >> m;for (int i = 1; i <= n; i++){cin >> Weight[i];MAX += Weight[i];//计算出总重量}if (m == 0){Find();}Search(1, 1);cout << answer << endl; }
转载于:https://www.cnblogs.com/ZDHYXZ/p/6857244.html
砝码称重 洛谷 1441相关推荐
- 洛谷 P2347 砝码称重
P2347 砝码称重 题目描述 设有1g.2g.3g.5g.10g.20g的砝码各若干枚(其总重<=1000), 输入输出格式 输入格式: 输入方式:a1 a2 a3 a4 a5 a6 (表示1 ...
- 砝码称重【第十二届蓝桥杯】【省赛】【B组】
砝码称重[第十二届蓝桥杯][省赛][B组] Description 你有一架天平和N个砝码,这N个砝码重量依次是W1.W2,-WN 请你计算一共可以称出多少种不同的重量? 注意砝码可以放在天平两边. ...
- 【DP】砝码称重 (ssl 1072)
砝码称重 ssl 1072 题目大意: 有6种砝码,每种的个数分别为a1,a2,a3,a4,a5,a6,请问可以平出多少种重量(0除外) Description 设有1g.2g.3g.5g.10g.2 ...
- 【OJ8756】砝码称重V2,可达性多重背包
砝码称重V2 查看 提交 统计 提问 总时间限制: 1000ms 内存限制: 65536kB 描述 设有1g.2g.3g.5g.10g.20g的砝码各若干枚(其总重<=100,000),要求:计 ...
- 【codevs2144】砝码称重2,哈希什么的都去死吧
砝码称重 2 时间限制: 1 s 空间限制: 16000 KB 题目等级 : 钻石 Diamond 题解 题目描述 Description 有n个砝码,现在要称一个质量为m的物体,请问最少需要挑出几个 ...
- Bailian4141 砝码称重【DP】
4141:砝码称重 总时间限制: 1000ms 内存限制: 65536kB 描述 设有1g.2g.3g.5g.10g.20g的砝码各若干枚(其总重<=1000),要求:计算用这些砝码能称出的不同 ...
- 51NOD 1449 砝码称重(贪心+进制思想)
题目连接:http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1449 1449 砝码称重 题目来源: CodeForces 基 ...
- 第十二届蓝桥杯省赛 C/C++大学B组 试题G:砝码称重
试题题目: 本题为编程题第二题 解题思路: 方法一:暴力求解 1.分析 首先利用数组W[N]W[N]W[N]记录NNN块砝码的质量. 模拟放取过程.先取第一块砝码放在天平上,再取第二块砝码 ...
- 【SSL】1072砝码称重
[SSL]1072砝码称重 Time Limit:1000MS Memory Limit:65536K Description 设有1g.2g.3g.5g.10g.20g的砝码各若干枚(其总重< ...
最新文章
- Transformer 架构逐层功能介绍和详细解释
- [转载]datatable中只取前7条数据
- WP8.1开发中复杂JSON绑定数据时的方法
- 报错:ModuleNotFoundError: No module named ‘cv_bridge‘,以及在ROS是如何安装cv_bridge库包
- Hyper-V 2016 系列教程15 Hyper-V Cmdlets PowerShell 命令提示符
- 解决递归中的重复计算问题
- android编程 自动裁剪图片,Android编程实现调用相册、相机及拍照后直接裁剪的方法...
- SpringMVC+hibernate+mysql+EASYUI的登陆+CRUD
- 【新手宝典】一篇博文带萌新建站并了解建站体系流程和对萌新友好的便捷方式,这篇博文很有可能是你的启蒙文
- 数据库设计的核心原则 外键的设计 提高插入数据速度
- 猜拳游戏html,JavaScript中实现猜拳小游戏
- 我连饭也顾不上HAO3GP整站源码
- 熵的理解(玻尔兹曼分布)
- 73. 简化 CSS 选择符
- 从著名的list_head看linux内核中OO 从Unix分层内核栈以及中断处理看Linux内核的另类
- x264-VBV(video buffering verifier)
- ImageMagicK之合成图片
- s3c2410 2.6.22.1内核移植
- 架构师素养及从小菜进阶架构(CTO)的书籍【转】
- ei eo 功能类型_[转载]CMMI之功能点估算法:EI、EQ和EO
热门文章
- python import 类 继承_python学习之类的继承
- moment格式换时间_不一样的日期、时间转换(moment.js)
- python多维数组运用_使用Python将文件读入多维数组
- python展开 c函数中的宏预处理_C中的预处理宏
- 统计文件里有多少个字符(only a simple cpp)
- 操作系统上机作业--根据莱布尼兹级数计算PI(1)(多线程)
- 160 - 34 Cruehead.3
- 《源码分析转载收藏向—数据库内核月报》
- 的使用_面部精华使用方法和使用步骤;
- uva 1153—— Keep the Customer Satisfied