博客
关于我
【背包dp】P5020 货币系统
阅读量:286 次
发布时间:2019-03-03

本文共 647 字,大约阅读时间需要 2 分钟。

通过观察可以发现等价的两个货币系统其实是子集的关系,也就是说把给定系统内的可以用其他面额的钱表示出来的金额删掉即可

关于证明:

如果A和B货币系统等价,且存在一个数字t属于A,不属于B,那么根据题意,t这个金额一定可以被B的元素表示出来,也就是说,从A集合中删掉这个数字,仍不影响A系统能表示出的所有金额

 

代码

#include
using namespace std;int t,n,a[105],amount[25005];int main(){ freopen("a.in","r",stdin); freopen("a.out","w",stdout); scanf("%d",&t); while(t--) { int ans=0; memset(amount,0,sizeof(amount)); scanf("%d",&n); for(int i=1;i<=n;i++) scanf("%d",&a[i]),amount[a[i]]=2; sort(a+1,a+n+1); for(int i=1;i<=a[n];i++) if(amount[i]) for(int j=1;j<=n,i+a[j]<=a[n];j++) amount[i+a[j]]=1; for(int i=1;i<=a[n];i++) if(amount[i]==2) ans++; printf("%d\n",ans); } return 0;}

 

转载地址:http://ubwm.baihongyu.com/

你可能感兴趣的文章
2021年过氧化工艺试题及答案及过氧化工艺考试平台
查看>>
2021年重氮化工艺考试题库及重氮化工艺考试报名
查看>>
2021年车工(高级)考试总结及车工(高级)试题及答案
查看>>
2021年压力焊证考试及压力焊实操考试视频
查看>>
2021年低压电工考试及低压电工考试申请表
查看>>
2021年低压电工考试及低压电工考试申请表
查看>>
2021年A特种设备相关管理(电梯)考试APP及A特种设备相关管理(电梯)复审考试
查看>>
2021年美容师(初级)考试报名及美容师(初级)新版试题
查看>>
2021年N1叉车司机考试题及N1叉车司机复审模拟考试
查看>>
2021年危险化学品经营单位主要负责人考试APP及危险化学品经营单位主要负责人多少钱
查看>>
2021年T电梯修理考试技巧及T电梯修理模拟考试软件
查看>>
2021年R2移动式压力容器充装考试题及R2移动式压力容器充装找答案
查看>>
2021年高处安装、维护、拆除考试资料及高处安装、维护、拆除证考试
查看>>
2021年电工(初级)考试及电工(初级)证考试
查看>>
2021年安全员-B证-项目负责人(广东省)新版试题及安全员-B证-项目负责人(广东省)考试试卷
查看>>
2021年安全员-B证(山东省)考试APP及安全员-B证(山东省)考试技巧
查看>>
2021年安全员-A证-主要负责人(广东省)复审考试及安全员-A证-主要负责人(广东省)操作证考试
查看>>
2021年安全员-A证(山东省)考试题及安全员-A证(山东省)报名考试
查看>>
2021年G1工业锅炉司炉考试报名及G1工业锅炉司炉模拟考试题库
查看>>
大数据学习之Spark——00Spark项目的pom.xml文件
查看>>