题解:若存在一个货币系统的简化拥有与原货币系统不同的货币,先讨论只多出一种货币的情况,假设多出来的是A,那么x*A必然可以被原货币系统表示(x表示大素数),也就是说原货币系统中必然有A的约数B,添加A不如保留B,所以一个货币系统的简化一定不会添加其它货币
考虑使m尽可能小,那就要让大的面值尽可能多的能被小的面值凑出来
用dp[i]表示i这个面值能否被表示出来,先把面值排序,然后从小到大扫,如果能被表示就跳过,否则从0循环到maxn,对每个面值进行判断能否表示即可。

代码:

#pragma GCC optimize(3,"Ofast","inline")
#include <bits/stdc++.h>
const int maxn = 110;
const int MaxN = 0x3f3f3f3f;
const int MinN = 0xc0c0c00c;
typedef long long ll;
const int mod = 1e9+7;
using namespace std;
int a[maxn];
int dp[25010];
int main()
{int t;cin>>t;while (t--){int n;cin>>n;memset(dp,0,sizeof(dp));for(int i=1;i<=n;i++) scanf("%d",&a[i]);sort(a+1,a+n+1);dp[0]=1;int ans=n;for(int i=1;i<=n;i++){if(dp[a[i]]){ans--;continue;}for(int j=a[i];j<=a[n];j++){dp[j]=dp[j]+dp[j-a[i]];}}printf("%d\n",ans);}return  0;
}

[NC21228]货币系统相关推荐

  1. 洛谷P1474 [USACO 2.3]货币系统 Money Systems [2017年4月计划 动态规划04]

    P1474 货币系统 Money Systems 题目描述 母牛们不但创建了它们自己的政府而且选择了建立了自己的货币系统.由于它们特殊的思考方式,它们对货币的数值感到好奇. 传统地,一个货币系统是由1 ...

  2. USACO 2.3 货币系统(背包/生成函数)

    Description 母牛们不但创建了他们自己的政府而且选择了建立了自己的货币系统. [In their own rebellious way],他们对货币的数值感到好奇. 传统地,一个货币系统是由 ...

  3. Codeup-问题 C: 货币系统

    题目描述 母牛们不但创建了他们自己的政府而且选择了建立了自己的货币系统. [In their own rebellious way],,他们对货币的数值感到好奇. 传统地,一个货币系统是由1,5,10 ...

  4. 牛客网【每日一题】5月27日题目精讲 货币系统

    链接: 文章目录 题目描述 题解: 代码: 题目描述 在网友的国度中共有n种不同面额的货币,第i种货币的面额为a[i],你可以假设每一种货币都有无穷多张.为了方便,我们把货币种数为n.面额数组为a[1 ...

  5. 货币系统(信息学奥数一本通-T12973)

    [题目描述] 给你一个n种面值的货币系统,求组成面值为m的货币有多少种方案. [输入] 第一行为n和m. [输出] 一行,方案数. [输入样例] 3 10        //3种面值组成面值为10的方 ...

  6. DP学习之USACO货币系统

    Description 母牛们不但创建了他们自己的政府而且选择了建立了自己的货币系统.  [In their own rebellious way],,他们对货币的数值感到好奇.  传统地,一个货币系 ...

  7. 信息学奥赛一本通 1273:【例9.17】货币系统

    [题目链接] ybt 1273:[例9.17]货币系统 注:题目中0<n≤1000<n\le 1000<n≤100,0<m≤100000<m\le 100000<m ...

  8. 一本通 1273:货币系统

    题目描述] 给你一个n种面值的货币系统,求组成面值为m的货币有多少种方案. [输入] 第一行为n和m. [输出] 一行,方案数. [输入样例] 3 10 //3种面值组成面值为10的方案 1 //面值 ...

  9. 1273:【例9.17】货币系统

    时间限制: 1000 ms         内存限制: 65536 KB [题目描述] 给你一个n种面值的货币系统,求组成面值为m的货币有多少种方案. [输入] 第一行为n和m. [输出] 一行,方案 ...

最新文章

  1. SQL compute by 的使用
  2. 线程访问 DevExpress控件异常时 解决方法
  3. 基于ARM+DSP进行应用开发-经验共享
  4. Prism源代码解析(IRegionManager)
  5. redis五种数据类型的使用场景
  6. 圆弧构型机器人轮直径校准
  7. Javascript三种创建对象的方法,new关键字,for...in 遍历对象
  8. 农学院计算机考试题,天津农学院计算机考试参考.doc
  9. SQL 2008完全卸载
  10. 时间管理——番茄工作法
  11. 计算机网络是几级学科,教育部更新学科目录 “网络空间安全”增设为一级学科...
  12. 让刷Q币者对爱机你无从下手
  13. graphs菜单_Wireshark自带工具IO Graphs分析接收数据平滑度案例
  14. 【番杰的小技巧笔记】查看windows许可证到期时间
  15. 腾讯企业邮箱支持 pop/imap/exchange服务器地址(用于客户端)
  16. C++面试进阶之咖啡罐问题
  17. 国王的金币for循环
  18. 固态硬盘安装--系统迁移--设置引导启动项
  19. 深谈德国车和日本车的区别--觉得分析的还算冷静客观
  20. BeautifulSoup说明

热门文章

  1. Linux之cp和mv命令选项
  2. 这个北航妹子也太卷了...
  3. 数字图像处理必备基本知识
  4. 使用Numpy实现PCA
  5. Python3经典100例(③)
  6. ZEGO即构科技携小程序连麦直播方案亮相GMIC
  7. Django详解之models操作
  8. spi nor flash使用汇总
  9. Gonet2 游戏server框架解析之gRPC提高(5)
  10. Android -- View移动的六种方法