钱币兑换问题(dp+数学)

简介: 题意:在一个国家仅有1分,2分,5分硬币,将n(n>=5)分钱兑换成硬币有很多种兑法。求有多少种兑换方式。

题意:在一个国家仅有1分,2分,5分硬币,将n(n>=5)分钱兑换成硬币有很多种兑法。求有多少种兑换方式。


第一种解法:


通过枚举3的种类数,当你已知3的个数就可以求出2的种类,以此类推,3的个数确定,2的个数也可以确定,剩下的就是1,假设3的个数为x(0<=x<=n/3),那么2的个数就是(n-3*i)/2,再然后1的个数就确定了。


#include<bits/stdc++.h>
using namespace std;
int  main()
{
  int n;
  while(cin>>n){
    int i,j,ans=0;
    for(i=0;i<=n/3;i++){
      int temp=(n-3*i);     
      ans+=temp/2+1;        
    }
    cout<<ans<<endl;
  }
}


第二种解法:


类似完全背包dp, 比较经典的dp问题,外层循环是硬币的价值,可以一个一个枚举,如果i=1,那么则一直放1,求出方案数,其他同理。


#include<bits/stdc++.h>
using namespace std;
const int maxn=32768+10000;
int dp[maxn];
int main()
{
  int n,i,j;
  while(~scanf("%d",&n)){
    memset(dp,0,sizeof(dp));
    dp[0]=1;
    for(i=1;i<=3;i++){
      for(j=i;j<=n;j++){
        dp[j]+=dp[j-i];
      }
    }
    cout<<dp[n]<<endl;
  }
}
相关文章
|
XML Dubbo fastjson
FastJson - 设置默认参数,全局配置方式及爬坑
FastJson - 设置默认参数,全局配置方式及爬坑
2116 0
|
2月前
|
JavaScript Java 关系型数据库
2025版基于springboot的企业办公用品采购管理系统
本系统旨在优化企业办公用品采购流程,通过自动化、标准化管理,提升采购效率,降低运营成本。结合Spring Boot、Vue、Java与MySQL技术,实现需求申请、审批、采购、入库全流程数字化,助力企业实现高效、智能的采购管理,增强市场竞争力。
|
3月前
|
JSON 监控 API
抖音视频列表API秘籍!轻松获取视频列表数据
抖音视频列表API是抖音开放平台提供的核心接口,支持按关键词、分类、排序方式筛选视频,适用于内容推荐、趋势分析等场景。接口返回含视频ID、标题、播放量等50+字段,支持分页获取,通过HTTP GET请求调用,返回JSON格式数据,便于开发者快速集成与处理。需注册平台账号获取访问权限。
767 56
|
4月前
|
缓存 前端开发 Java
SpringBoot 实现动态菜单功能完整指南
本文介绍了一个动态菜单系统的实现方案,涵盖数据库设计、SpringBoot后端实现、Vue前端展示及权限控制等内容,适用于中后台系统的权限管理。
427 1
|
8月前
|
运维 监控 前端开发
Zabbix告警分析新革命:DeepSeek四大创新场景助力智能运维
面对日益复杂的IT环境,高效分析监控数据并快速响应成为运维的关键挑战。本文深入探讨了DeepSeek与Zabbix结合的创新应用,包括一键式智能告警分析、Zabbix文档知识库助手及钉钉告警增强功能。通过部署指南和实用脚本,展示了如何提升故障排查效率,为运维工程师提供高效解决方案。
831 5
|
安全 关系型数据库 MySQL
揭秘:如何在无影的Serverless世界中,悄无声息地操控MySQL数据库!
【8月更文挑战第8天】在云计算领域,Serverless 枟能凭借其高效与弹性特性脱颖而出。本文采用问答形式解析函数计算环境中 MySQL 数据库的安全高效访问方法。介绍了如何利用数据库插件或 SDK 连接 MySQL,并提供了一个使用 Python 和 `pymysql` 在阿里云函数计算中连接 MySQL 的示例代码片段。同时强调了通过环境变量或密钥管理服务安全处理数据库凭证的重要性。随着 Serverless 技术的发展,数据库操作将更加简便。
263 7
|
JSON Java 数据格式
java操作http请求针对不同提交方式(application/json和application/x-www-form-urlencoded)
java操作http请求针对不同提交方式(application/json和application/x-www-form-urlencoded)
473 1
|
安全 Java Maven
Maven 镜像-阿里云
Maven 镜像-阿里云
3380 0
|
搜索推荐 机器人 索引
内容分发策略与 SEO 优化指南
内容分发是指通过各种媒介分享、发布或传播内容给受众的过程。这些媒介可以包括不同的渠道,例如社交媒体平台(Facebook、Twitter、LinkedIn、朋友圈、微博、小红书、B 站、抖音、公众号等)、电子邮件新闻稿、博客、播客、网站,甚至杂志和报纸等线下场所。内容分发的性质可以涵盖从博客文章、文章、视频、信息图表到播客的各种内容。内容分发的目的是使您的内容尽可能多地接触到相关受众,提高覆盖面、可见性和参与度。该策略可能涉及有机和付费两种分发方式,通常采用多渠道方法来最大限度地扩大覆盖面。
827 2
|
人工智能 测试技术 项目管理
软件测试|如何使用ChatGPT生成思维导图
软件测试|如何使用ChatGPT生成思维导图