问题描述

你有一架天平和 NN 个砝码,这 NN 个砝码重量依次是 W_1, W_2, · · · , W_NW1​,W2​,⋅⋅⋅,WN​。

请你计算一共可以称出多少种不同的重量? 注意砝码可以放在天平两边。

输入格式

输入的第一行包含一个整数 NN。

第二行包含 NN 个整数:W_1, W_2, W_3, · · · , W_NW1​,W2​,W3​,⋅⋅⋅,WN​。

输出格式

输出一个整数代表答案。

样例输入

3
1 4 6

样例输出

10

样例说明

能称出的 1010 种重量是:1、2、3、4、5、6、7、9、10、111、2、3、4、5、6、7、9、10、11​。

1 = 1;1=1;

2 = 6 − 4 (2=6−4(天平一边放 66,另一边放 4);4);​

3 = 4 − 1;3=4−1;

4 = 4;4=4;

5 = 6 − 1;5=6−1;​

6 = 6;6=6;

7 = 1 + 6;7=1+6;

9 = 4 + 6 − 1;9=4+6−1;

10 = 4 + 6;10=4+6;

11 = 1 + 4 + 6。11=1+4+6。

评测用例规模与约定

对于 50%50的评测用例,1 ≤ N ≤ 151≤N≤15。

对于所有评测用例,1 ≤ N ≤ 100,N1≤N≤100,N​个砝码总重不超过 100000100000。

运行限制

  • 最大运行时间:1s
  • 最大运行内存: 256M
n=int(input())
fm=list(map(int,input().split()))
s=sum(fm)
dp=[False for _ in range(s+1)]
dp[0]=True
count=0
for i in range(n):for j in range(s,fm[i]-1,-1):x=j-fm[i]if dp[j]:continueif dp[x]:dp[j]=Truecount+=1for i in range(1,s+1):if dp[i]:for j in range(n):if i-fm[j]>0 and not dp[i-fm[j]]:dp[i-fm[j]]=Truecount+=1print(count)

测试显示有一项数据会超时,求大佬帮忙修改~

蓝桥杯 省赛 砝码称重相关推荐

  1. 蓝桥杯省赛 砝码称重(B组)

    原题链接  "蓝桥杯"练习系统 一道简单dp题 ​#include <bits/stdc++.h> using namespace std; bool dp[110][ ...

  2. 第十二届蓝桥杯真题砝码称重dp

    问题描述 你有一架天平和 N 个砝码,这 N 个砝码重量依次是 W1,W2,⋅⋅⋅,WN. 请你计算一共可以称出多少种不同的正整数重量? 注意砝码可以放在天平两边. 输入格式 输入的第一行包含一个整数 ...

  3. 蓝桥杯数学题:天平称重:巧用三进制。基于python3.9的原创代码

    用天平称重时,我们希望用尽可能少的砝码组合称出尽可能多的重量.如果有无限个砝码,但它们的重量分别是1,3,9,27,81,--等3的指数幂神奇之处在于用它们的组合可以称出任意整数重量(砝码允许放在左右 ...

  4. 第十二届蓝桥杯省赛 Java 大学 B 组—砝码称重—满分百分题解

    第十二届蓝桥杯省赛 Java 大学 B 组-砝码称重-满分百分题解 一.解题思路 1.解法一( Java ) 解法思路:简单模拟 ☝ArrayList 遍历 + HashSet 存储(去重) 伪代码如 ...

  5. 砝码称重【第十二届蓝桥杯】【省赛】【B组】

    砝码称重[第十二届蓝桥杯][省赛][B组] Description 你有一架天平和N个砝码,这N个砝码重量依次是W1.W2,-WN 请你计算一共可以称出多少种不同的重量? 注意砝码可以放在天平两边. ...

  6. 【题解】【蓝桥杯】试题 历届真题 砝码称重【第十二届】【省赛】【B组】

    题目链接 试题 历届真题 砝码称重[第十二届][省赛][B组] 题目描述 解题思路 暴力,两个map,分别存储当前能称出的重量和遍历时用于计算的重量 需要注意的三点是 abs函数是在math.h里面的 ...

  7. 第十二届蓝桥杯省赛 C/C++大学B组 试题G:砝码称重

    试题题目: 本题为编程题第二题 解题思路: 方法一:暴力求解 1.分析    首先利用数组W[N]W[N]W[N]记录NNN块砝码的质量.    模拟放取过程.先取第一块砝码放在天平上,再取第二块砝码 ...

  8. 第十四届蓝桥杯集训——练习解题阶段(无序阶段)-ALGO-936 砝码称重

    第十四届蓝桥杯集训--练习解题阶段(无序阶段)-ALGO-936 砝码称重 目录 第十四届蓝桥杯集训--练习解题阶段(无序阶段)-ALGO-936 砝码称重 前言 关于数学的疑问 算法训练 砝码称重 ...

  9. 【蓝桥杯-砝码称重】

    蓝桥杯-砝码称重 问题描述: 你有一架天平和 N 个砝码,这 N 个砝码重量依次是 W1, W2, · · · WN 请你计算一共可以称出多少种不同的重量? 注意砝码可以放在天平两边 输入的第一行包含 ...

最新文章

  1. 在VS2010平台上创建并使用dll
  2. ubuntu上开启SSH服务
  3. textisselectable长按再点击_微信朋友圈如何发布长视频?原来打开这个功能就可以,涨知识了...
  4. 【安全牛学习笔记】kali TOP10 安全工具:
  5. java 多线程跑数据_java——多线程的实现方式、三种办法解决线程赛跑、多线程数据同步(synchronized)、死锁...
  6. ijkplayer-添加播放截图功能
  7. eclipse重定向输入输出到文件
  8. 怎么在Telegram电报纸飞机中搜索频道群组机器人教程。
  9. python一行代码随机生成mac地址
  10. python 图像倾斜校正_通过OpenCV和Python进行文本倾斜校正
  11. 活动 | 腾讯×Nature Research:提问AI与机器人的未来
  12. 数据传输 | 利用 DTLE 将 MySQL 数据同步到 DBLE
  13. CAD怎么进行给水计算?CAD给水计算教程
  14. Tromino(更准确地说是“右Trominio”)是一个由棋盘上的三个1x1方块组成的L型骨牌。
  15. 六十星系之43紫微天相坐辰戌
  16. 期末测验: 课程水平综合测验 (第10周)
  17. 到底什么是Web2.0
  18. 羊毛大军杀入币圈,有人月入过万,有人惨遭反薅,沦为韭菜
  19. springboot使用session保存和获取参数
  20. java camel_Apache Camel到底是什么?

热门文章

  1. 下一代移动电源解决方案
  2. 不能将值 NULL 插入列 'id',表 'weibo.dbo.myfriend';列不允许有空值。INSERT 失败。
  3. 高通8916 PMIC休眠关闭LDO 解决LCM极化问题
  4. 安装分子对接软件UCSF DOCK6
  5. MindManager2022全新版思维导图新增功能
  6. 自己动手DIY 组装移动硬盘大比拼
  7. 【转载】城市交通路口无线视频监控系统
  8. 亚马逊Amazon站内信对接
  9. 纸上得来终觉浅,构建之法东北师大站2016秋季学期
  10. 秒杀和抢单系统的设计思路